The Essence of Using Ruby on Rails in Corporations

  • 1,910 views
Uploaded on

 

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
1,910
On Slideshare
0
From Embeds
0
Number of Embeds
1

Actions

Shares
Downloads
19
Comments
0
Likes
4

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. 企業システム開発に おけるRuby/Railsの 活用大場 光一郎 伊藤忠テクノソリューションズ(株) koichiro@ctc-g.co.jp koichiro@meadowy.orgJUAS OSS活用研究プロジェクト; 2008-11-11(火) 1
  • 2. CTCはRuby技術者認定試験をやってます。 2
  • 3. 自己紹介クロスファンクショングループシステムエンジニアリング室SI推進部開発環境推進課 3
  • 4. NowPrinting開発システムジャーナル vol.7(マイコミ)RoR逆引きクイックリファレンス(マイコミ)まるごとRuby vol.1(Impress)JavaExpert #02(技術評論社)Scarabによるバグ追跡システム(オーム社) 4
  • 5. JRubyと私•NKF• Iconv 5
  • 6. 資料は公開します 6
  • 7. Agenda•Railsの特徴を紹介• 特徴にあった活用• 人の育成• 実際にやってみた 7
  • 8. Rubyの特徴•オブジェクト指向言語• スクリプト言語• 動的な言語 8
  • 9. まつもとゆきひろ氏 9
  • 10. 10年以上の歴史1995 2000 2005 2010 Ruby Ruby Ruby Ruby 1.1 1.3 1.6 1.8 Ruby Ruby 1.4 1.0 Ruby 1.9 Ruby 1.2 Java Java Java Java Java 6 1.0 1.2 1.4 5.0 Java Java 1.1 1.3 10
  • 11. Railsの概要•Webアプリケーションフレームワーク•MVC 11
  • 12. MVC 1 1 ControllerBrowser 6 1 4 1 2 1 5 1 3 1 View Model Ruby on Rails Database 12
  • 13. デザインパターン 13
  • 14. Railsで構築したサイト 14
  • 15. Twitter 15
  • 16. Cookpad 16
  • 17. 地球の歩き方 17
  • 18. Rails2つの理念 18
  • 19. 1 DRYDon t Repeat Yourself 19
  • 20. 2 CoCConvention over Configuration 20
  • 21. 例:Controllerhttp://website.com/greeting/say greeting sayclass Greeting GreetingController < App.. def say Hello World. endend 21
  • 22. 例:Modelclass User < Act... users has_many :blogs id number name varcharend password char mail varcharclass Blog < Act... blogs belongs_to :user id numberend user_id entry number varchar updated_at datetime 22
  • 23. DSL•Domain SpecificLanguage•ドメイン特化言語 23
  • 24. コード量が激減する 24
  • 25. ジェネレータとは違います 25
  • 26. メタプログラミング 26
  • 27. 実践Rails 目次オライリー・ジャパン社Brad Ediger著(株)クイープ訳3150円 27
  • 28. Scaffold•足場、ひな型• マスタメンテ• 本格的アプリケーションでは使われない 28
  • 29. R a i l s ってなに? 29
  • 30. オブジェクト指向(Ruby) +デザインパターン(Rails) ¦¦メタプログラミング(DSL) 30
  • 31. Railsの特徴 31
  • 32. Railsに先進的な発明が盛り込まれているわけではない 32
  • 33. なにが人々を惹きつけるのか 33
  • 34. プログラミングする上でよいとされるプラクティスが詰め込んである 34
  • 35. アジャイル 35
  • 36. アジャイル支援•マイグレーション• DBの変更がクラス並みに容易に•少しづつ理想的なスキーマに育てる 36
  • 37. テスト•ユニットテスト• ファンクショナルテスト• インテグレーションテスト• テスト駆動開発(TDD) 37
  • 38. テストが変更する力を生み出す 38
  • 39. RESTful 39
  • 40. REST•かっこいいURL• 規則的なURL• HTTPを活用しよう 40
  • 41. http://unrest.com/login.do?jsessionid=09834ljjfsdioreiw8043 41
  • 42. http://rest.com/entries/10/edit 42
  • 43. Railsのパワー 43
  • 44. バランスの妙 44
  • 45. パレートの法則•80-20ルール• 20の力で80のことを• 80まではカバーする 45
  • 46. Railsの楽しさ•小さな力• 大きな変化• 全能感 46
  • 47. まとめDRY,デザインパターン, メタプログラミング, TDD,REST ¦¦ Rails 47
  • 48. 得手不得手 mckaysavage (c) mckaysavage 48
  • 49. 合わないプロジェクト 49
  • 50. DRYじゃないDRYにしなくていい (c) Jun Seita 50
  • 51. 多数で同時開発 51
  • 52. オブジェクト指向に不慣れ 52
  • 53. テス ト を使わない 53
  • 54. RESTじゃない 54
  • 55. DB変更できない 55
  • 56. Railsが得意とする武器が封じられる 56
  • 57. できること Java Ruby WebApp ● ● Mail ● ● DB ● ●Web Service ● ▲ Async ● ▲ Legacy ● ▲ Auth* ● ▲ 57
  • 58. マッチするプロジェクトとメンバーならたいへんなパワーを生み出す 58
  • 59. マッチするプロジェクトに適用する 59
  • 60. Railsにマッチするメンバーを育てるには 60
  • 61. プログラミング言語を使うと 61
  • 62. 思考のプロセスに影響する 62
  • 63. RubyらしいRubyっぽい 63
  • 64. The Ruby Way 64
  • 65. 65
  • 66. オブジェクト指向に精通デザインパターンに造詣 テストを愛する 66
  • 67. 王道は無い 67
  • 68. みんながエキスパートでなくてもいい 68
  • 69. Railsの性質を理解することで効果的に使える 69
  • 70. Railsは自転車だ 70
  • 71. 背景の理論が分からなくても乗れる。原理、姿勢の出し方、力の入れ方を知ってると速く走れる。 71
  • 72. 人を育てるプロジェクト とは 72
  • 73. ソースコード レビュー 73
  • 74. ペアプログラミング 74
  • 75. コミュニケーション 75
  • 76. 名前重要 76
  • 77. Railsが取り入れているプラクティスを活用する 77
  • 78. 実際にやっ てみた 78
  • 79. •10人は多い• 6人以下くらい• 1名は経験者が欲しい• 経験者いなければ作る 79
  • 80. 進化の速い Rails 80
  • 81. Railsの歴史2005-12 2006-03 2007-01 2007-07 2008-06 2008/10 Rails Rails Rails Rails Rails Rails 1.0.0 1.1.0 1.2.1 2.0.0 2.1.0 2.2RC1 81
  • 82. プラグインヘル 82
  • 83. Enginesの 悪夢 83
  • 84. 後方互換性の無い変更 84
  • 85. 追いつくのが大変更新も大変人に勧めるのも大変参考書籍が無い 85
  • 86. 鮫は泳ぐのを止めると死ぬ 86
  • 87. バージョンを固定することでスキル停滞をまねく 87
  • 88. 新しいRailsには機能だけでなく新しい考え方が導入される 88
  • 89. •Rails 2.0 → REST• Rails 2.1 → named_scope•Rails 2.2 → 国際 化、MT-safe 89
  • 90. パフォーマンスが上がる 90
  • 91. セキュリティの向上 91
  • 92. Railsを使うということ•Rails的に行動する• オブジェクト指向• デザインパターン• メタプログラミング• テスト 92
  • 93. まとめ•Railsの魅力• Railsに合うプロジェクトを選ぶ•Railsをうまく使うには• Railsを使う上での課題 93
  • 94. Railsは人を育てる 94
  • 95. AnyQuestion? 95