46
Rails 3のはなし 松田 明 @ OSC2009 Tokyo/Fall

Rails 3のはなし

Embed Size (px)

DESCRIPTION

オープンソースカンファレンス 2009 Tokyo/Fall にて http://www.ospn.jp/osc2009-fall/modules/eguide/event.php?eid=45

Citation preview

Page 1: Rails 3のはなし

Rails 3のはなし松田 明 @ OSC2009 Tokyo/Fall

Page 2: Rails 3のはなし

おしながき

1.Railsの2つの最新版2.Rails 3の特徴3.Rails 3の気になる新機能

Page 3: Rails 3のはなし

自己紹介

Page 4: Rails 3のはなし

自己紹介

name: ‘松田 明’,

twitter: @a_matsuda,

github: ‘amatsuda’

Page 5: Rails 3のはなし
Page 6: Rails 3のはなし

Rails Contributor

これ

Page 7: Rails 3のはなし

Rails Bugmasher

なんか賞品もらった

Page 8: Rails 3のはなし

Head First Rails

• Rails 2.3完全対応•超初学社向け入門書•オライリージャパン•この冬発売予定

Page 9: Rails 3のはなし

おしながき

1.Railsの2つの最新版2.Rails 3の特徴3.Rails 3の気になる新機能

Page 10: Rails 3のはなし

Railsの2つの最新版

GitHubのリポジトリ上に

2つのアクティブなブランチ

Page 11: Rails 3のはなし

2つのアクティブなブランチ

•2-3-stable• master

Page 12: Rails 3のはなし

RubyKaigi 2009にて

“use edge”

とか言ったかと思うんですが、

Page 13: Rails 3のはなし

2つのブランチの位置づけ

•2-3-stable=> Railsの先っちょを使いたい人向け

•master=> Railsを開発する人向け

Page 14: Rails 3のはなし

今のmaster

• 動いたり動かなかったり•さわるな危険

Page 15: Rails 3のはなし

言い換えると、

•2-3-stable=> 今現在手に入る最高のRails

• master=> いつか手に入る未来のRails

Page 16: Rails 3のはなし

おしながき

1.Railsの2つの最新版2.Rails 3の特徴3.Rails 3の気になる新機能

Page 17: Rails 3のはなし

Rails 3の特徴•Merbとの統合で話題• is a “big bang” rewrite• 開発メンバー•modularity• freedom

Page 18: Rails 3のはなし

Merbとの統合で話題

•同時多発カミングアウトという演出•あれからもうすぐ1年

Page 20: Rails 3のはなし

どこがやねん

Page 21: Rails 3のはなし

開発メンバー

•ActionPack=> Yehuda Katz

• ActiveSupport=> Jeremy Kemper

Page 22: Rails 3のはなし

この2人

今年、相次いで来日講演

Page 23: Rails 3のはなし

2人が言及

modularity

Page 24: Rails 3のはなし

modularity

• 疎結合化•脱「フルスタック」

Page 25: Rails 3のはなし

疎結合化

•モジュール間のインターフェイスを規定•モジュールレベルでのDuck Typing的な• モンキーパッチ撲滅

Page 26: Rails 3のはなし

脱「フルスタック」

•選択肢が増えてきた•抽象化レイヤー•みんなRailsの子孫たち

Page 27: Rails 3のはなし

選択肢

DMとかSinatraとかJQueryとかHAMLとか

Page 28: Rails 3のはなし

抽象化レイヤー

•Web => Rack• 関係代数 => ARel

Page 29: Rails 3のはなし

みんなRailsの子孫たち

•Railsの思想に影響を受けたプロダクト• Railsちっく• 「Railsの一部」になり得る

Page 30: Rails 3のはなし

Railsnessの変化•Rails 11人で作った1本のレール

• Rails 2みんなで敷いた1本のレール

• Rails 3アプリの数だけレールがあっていいよね

Page 31: Rails 3のはなし

レールとは何なのか?

•Railsらしさのミーム• DHHが教えてくれたもの

Page 32: Rails 3のはなし

DHHが教えてくれたもの• DRY

• CoC

• フルスタック

• MVC

• ActiveRecord

• モデル中心

• REST

• TDD

• ジェネレーター

• DSL

• メタプログラミング

• Ajax

• environments

• プラグイン

• 15分でブログ

• Ruby

Page 33: Rails 3のはなし

Rails != DHH

Page 34: Rails 3のはなし

RubyKakgi 2009で

“political change”

とか言ったかと思うんですが、

Page 35: Rails 3のはなし

freedom

真のアナーキズムの到来、かもね

Page 36: Rails 3のはなし

おしながき

1.Railsの2つの最新版2.Rails 3の特徴3.Rails 3の気になる新機能

Page 37: Rails 3のはなし

気になる新機能•ActiveSupport• ActionPack• ActiveRecord• RailTies• Ruby

Page 38: Rails 3のはなし

ActiveSupport

• 全面的にオープンクラスにスイッチ•パフォーマンス向上•機能単位で分割ロード• extlibとの関係は?

Page 39: Rails 3のはなし

ActionPack• RailsでもMerbでもないものに全面書き換え

• abstract_controller• action_dispatch• new router

Page 40: Rails 3のはなし

ActiveRecord

• ActiveModel• ARel

Page 41: Rails 3のはなし

RubyKaigi 2008で

“named_scopeを使えばRubyのDSLで関係演算が!”

とか言ったかと思うんですが、

Page 42: Rails 3のはなし

ARel

今度こそ真打ち登場か!?

Page 43: Rails 3のはなし

RailTies

• yet another “application.rb”• new initializer• new generator

Page 44: Rails 3のはなし

Ruby

• Ruby 1.9.2 compatible• ruby_version_is “1.8.7”..””

Page 45: Rails 3のはなし

and much more

Page 46: Rails 3のはなし

つづきは 勉強会で