小川伸一郎氏のRubyコラム『scaffoldとREST』
Rails技術者認定試験運営委員会のオーナーでもあるヒューマンリソシアが
私が企画した小川伸一郎氏のRubyコラム『scaffoldとREST』を公開しています。(バックナンバー公開です)
OSS認定試験を作るときはコミュニティの方の協力がとても重要になります。先に携わり、環境(コミュニティ)を作られた方々の発展になるような資格を作りたくて、今回のRails技術者認定試験運営委員会も小川さんやほかのコミュニティの方々に多大な協力をいただいています。
私は昔からRailsに携わっているわけではないので、今回のRails歴史のようなコラムは勉強になることが多いです。興味がある方は是非ご覧ください。
###
今回はRailsの歴史と変化について紹介しましょう。
Ruby on Railsは2004年にデンマークのプログラマ、 David Heinemeier Hansson(通称 DHH)により公開されました。 10分以下でブログが作れる手軽さと生産性の高さから注目されました。 その後も順調にバージョンアップが続き、 2005年に1.0が、 2009年には2.3が、 2010年に3.0、 2011年に3.1、 2012年に3.2がリリースされています。 またまもなく4.0がリリースされるであろうと言われています。
バージョンアップが進むごとにさらに生産性を向上させるように機能や仕組みが盛り込まれてきました。 特に互換性を犠牲にしてでも新しい機能や変化を取り込もうとする、 意欲的な変更が行われてきたため、Railsアプリケーション開発者にとっては ありがたくもありましたが、頭痛の種にもなって来ました。
例えばRails 2.0ではnamed_scopeという機能が実装されました。 これはActiveRecordというデータベースを扱うライブラリに追加された新機能で、 テーブルを参照するときの条件を、わかりやすい単語で置き換える機能です。 このnamed_scopeにより、コードが直感的に書けるようになりました。 ちなみにnamed_scopeはRails 3.0からはscopeという名前に変わっています。
またRails 2.3では全体の構成が見直されて、 Rack1ベースに書き換えられました。 これによってより汎用的な書き方ができるようになり、 プラグインやエンジンと呼ばれるライブラリが数多く生まれました。 その一方で、多くのプラグインが動かなくなったため、 対応に苦慮した方も多いと思います。 私が開発・メンテナンスを行なっているモバイル用Railsプラグインであるjpmobileも、 Rails 2.3への対応にはかなり時間がかかっていました。
(この続きは以下のコラム本文をご覧ください)
http://resocia.jp/column/319/