Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.

Ruby In Enterprise Development

1.599 Aufrufe

Veröffentlicht am

published by Ye Zheng, consultant of ThoughtWorks

Veröffentlicht in: Technologie
  • Login to see the comments

Ruby In Enterprise Development

  1. 1. Ruby/Rails in Enterprise Development Ye Zheng [email_address]
  2. 2. ThoughtWorks <ul><li>Enterprise Development Experience </li></ul><ul><li>Ruby/Rails Development Experience </li></ul><ul><li>Agile Methodology </li></ul>
  3. 3. Agenda <ul><li>Language/Framework in Enterprise Development </li></ul><ul><li>Ruby in Enterprise Development </li></ul><ul><li>Last Mile in Enterprise Development </li></ul>
  4. 4. Language in Software Development
  5. 5. <ul><ul><ul><li>class User </li></ul></ul></ul><ul><ul><ul><ul><li>include Permission </li></ul></ul></ul></ul><ul><ul><ul><ul><li>set_super_role Role::GlobalAssurance </li></ul></ul></ul></ul><ul><ul><ul><ul><li>deny :add_comment, Role::DepartmentHead </li></ul></ul></ul></ul><ul><ul><ul><ul><li>... </li></ul></ul></ul></ul><ul><ul><ul><ul><li>grant :manage_groups, Role::GlobalAssurance </li></ul></ul></ul></ul><ul><ul><ul><ul><li>... </li></ul></ul></ul></ul><ul><ul><ul><li>end </li></ul></ul></ul>
  6. 6. Framework in Software Development
  7. 7. Convention Over Configuration MVC Test Automation … Directory Structure
  8. 8. Enterprise Development
  9. 9. Polyglot Programming (I)
  10. 10. Polyglot Programming (II)
  11. 11. Ruby as a … <ul><li>Development Language </li></ul><ul><li>Glue Language </li></ul><ul><li>Language for Legacy System </li></ul><ul><li>… </li></ul>
  12. 12. Java EE Server Ruby App Ruby App Ruby App Ruby App Ruby App …
  13. 13. Legacy System Case New Ruby Application Search Asset Management 3 rd Party Components Legacy Application Procedure Legacy Database
  14. 14. Last Mile in Enterprise Development <ul><li>People </li></ul><ul><li>Automation </li></ul><ul><li>Design for Automated Testing of Nonfunctional Requirements </li></ul><ul><li>Decouple Design from Production Environment </li></ul><ul><li>… </li></ul>
  15. 15. Automation <ul><li>namespace :svn do </li></ul><ul><li>task :add do </li></ul><ul><li>sh %(svn st | grep &quot;^?&quot; | awk -F &quot; &quot; '{printf &quot;amp;quot;%samp;quot;&quot;, $2}' | xargs -r svn add) </li></ul><ul><li>end </li></ul><ul><li>task :commit do </li></ul><ul><li>sh %(svn stat --ignore-externals) </li></ul><ul><li>require 'readline' </li></ul><ul><li>comment = Readline.readline(&quot;[Comment]: &quot;) </li></ul><ul><li>sh %(svn ci -m &quot;#{comment}&quot;) </li></ul><ul><li>end </li></ul><ul><li>task :up do </li></ul><ul><li>sh %(svn up}) </li></ul><ul><li>end </li></ul><ul><li>end </li></ul><ul><li>task :commit => %w(svn:up default svn:add svn:commit) </li></ul>
  16. 16. User Acceptance Test Environment
  17. 17. Enjoy Programming!

×