【B3】Rubyテクニカルセッション「3rdRailによるRuby / Ruby on Rails開発」
CodeGear Developer Camp – TokyoDavid Intersimone “David I”
Vice President of Developer Relations and Chief Evangelist
davidi@codegear.com

Copyright ©2008 CodeGear. All Rights Reserved.本文書の一部または全部の転載を禁止します。

BackgroundRuby• オブジェクト指向言語、すべてがオブジェクト• 動的型（Duck Typing）• 動的なクラスの変更• ブロックとクロージャー• 誕生して10年以上、しかし近年のRuby onRails（RoR）のブレークにより一気に注目を集める

Copyright ©2008 CodeGear. All Rights Reserved.本文書の一部または全部の転載を禁止します。

2008/2/20

21

BackgroundRails• MVCモデルをベースにしたWeb開発向けのフルスタックフレームーワーク• 独特！
• 超高生産性、コード中心のRADアプローチ• Webアプリケーションをすばやく開発可能• 拡大しつつある大規模なアドオンのエコシステム• 無料！
Copyright ©2008 CodeGear. All Rights Reserved.本文書の一部または全部の転載を禁止します。

2008/2/20

3

Railsのアーキテクチャ
MVCモデル
リクエスト

Action Controller
コントロール

応答ビュー

データアクセス

モデル

レンダー

ブラウザ

O/R Mapping

処理を指示

データ取得

データベース

Active Record

Action View

Copyright ©2008 CodeGear. All Rights Reserved.本文書の一部または全部の転載を禁止します。

2008/2/20

42

CodeGear 3rdRail• Ruby on Rails 統合開発環境（IDE）• 2007年9月リリース（バージョン1.0）• 「使用期限なしのサブスクリプション」として販売• 12ヶ月分アップデート権をバンドル

Copyright ©2008 CodeGear. All Rights Reserved.本文書の一部または全部の転載を禁止します。

2008/2/20

5

3rdRail = 企業でのRuby / Ruby on Railsの導入を促進
プロジェクトのサイズ／予算コントロール／管理

小規模プロジェクト
高いスキル

大規模プロジェクト

エンタープライズ

アーリー
アダプター

品質の保証
混在するスキルレベル
複雑性

Copyright ©2008 CodeGear. All Rights Reserved.本文書の一部または全部の転載を禁止します。

2008/2/20

6

3

3rdRailの主要機能
Rails開発にフォーカスしたIDE• JavaツールにRuby開発機能を追加したものではありません！

プロジェクトエクスプローラ
RubyおよびRHTMLテンプレートファイルでのコード補完、メソッド補完、パラメータ補完
リファクタリング
ライブ依存性ビュー
Project Commander
Ruby / Railsコンソールなど…
Copyright ©2008 CodeGear. All Rights Reserved.本文書の一部または全部の転載を禁止します。

2008/2/20

7

2008/2/20

8

3rdRail v1.0
プラットフォーム
• Windows XP• Windows Vista• Mac OS X
• Red Hat 4

Ruby v1.8.6
Rails v1.2.3

Copyright ©2008 CodeGear. All Rights Reserved.本文書の一部または全部の転載を禁止します。

4

3rdRail v1.01
パフォーマンス改善
バグフィックス

Copyright ©2008 CodeGear. All Rights Reserved.本文書の一部または全部の転載を禁止します。

2008/2/20

9

3rdRail v1.1 （2008年第1四半期予定）
IDEが複数のバージョンのRailsをサポート• 1.2.3, 1.2.6• 2.0.2 （新しいRESTfulサービスを含む）

サポートプラットフォームの追加• Mac OSX 10.5 （旧Leopard）• Ubuntu 7.10

高速Rubyデバッガ• Ruby-debug Gemをベース• RailsアプリケーションおよびERb（旧RHTML）のデバッグサポー
トを含む、• DLTK RubyコミュニティのEclipse統合作業に資金協力
Copyright ©2008 CodeGear. All Rights Reserved.本文書の一部または全部の転載を禁止します。

2008/2/20

105

今後の計画Q2アップデート• 新しいリファクタリング機能• アプリケーションの検査／検証

日本語版ローカライズ（リリース時期未定）• フィールドテストプログラムまもなく開始！

Copyright ©2008 CodeGear. All Rights Reserved.本文書の一部または全部の転載を禁止します。

2008/2/20

11

3rdRailのパワーを活用する

Copyright ©2008 CodeGear. All Rights Reserved.本文書の一部または全部の転載を禁止します。

6

シナリオ1: 新規参入
RubyやRailsについての経験のない新しい開発者がチームに加わりました。そこで…

Railsアプリケーションを開発するための前提環境を用意しなければなりません
RubyやRailsについて分かるようにならなければなりません

活用する機能:•Railsランタイム•プロジェクトの作成／インポート•コード生成ウィザード•サーバー管理
Copyright ©2008 CodeGear. All Rights Reserved.本文書の一部または全部の転載を禁止します。

2008/2/20

13

シナリオ2: 理解
既存のアプリケーションを継承してきました。これを拡張しなければならないので…

主要なコンポーネント間の相互作業を理解しなくてはなりません
アプリケーションの修正に必要な作業時間を正確に見積もれなければなりません

活用する機能:•Railsエクスプローラ•依存性ビュー
•関連するアクションのオープン
Copyright ©2008 CodeGear. All Rights Reserved.本文書の一部または全部の転載を禁止します。

2008/2/20

14

7

シナリオ3: 拡張
コードベースの理解が得られるようになりました。
そこで、いよいよ…
新しい機能を実装します
既存の機能についての問題点を修正します

活用する機能:•Project Commander•コード補完
Copyright ©2008 CodeGear. All Rights Reserved.本文書の一部または全部の転載を禁止します。

2008/2/20

15

シナリオ4: リファクタリング
アプリケーション全体の作業が終わったら、次にその信頼性を高める作業に着手しなければなりません。そこで…
アプリケーション全体の設計を改善します
新機能の追加を継続します（ただし複雑な作業ではなく！）

活用する機能:•リファクタリング•インテンションベースのアクション
Copyright ©2008 CodeGear. All Rights Reserved.本文書の一部または全部の転載を禁止します。

2008/2/20

168Thank You ☺

Copyright ©2008 CodeGear. All Rights Reserved.本文書の一部または全部の転載を禁止します。

9