「Ruby on Rails 5.0」リリース、WebSockets向けのフレームワークやAPIモードが加わる
Ruby on Railsの開発者であるDavid Heinemeier Hansson氏は6月30日、新たなメジャーリリース版となる「Ruby on Rails 5.0」を発表した。WebSocketsの処理を行うフレームワーク「Action Cable」など、多数の新機能が加わっている。
Ruby on Rails(Rails)は、Rubyで作成したWebアプリケーションフレームワーク。「プログラマーをハッピーに」というスローガンを掲げ、設定より規約を重視するアプローチをとる。
Rails 5.0は、2013年6月に公開されたRuby on Rails 4.0に続くメジャーリリース。4回のベータ、2回のリリース候補(RC)のリリースを経ての正式版となった。Heinemeier Hansson氏はRails 5.0のポイントとして、Action Cable、APIモードの2つを挙げている。
Action Cableは、Webブラウザとサーバー間の双方向通信のための技術「WebSockets」向けフレームワーク。接続の管理、サーバーサイド処理のためのチャネルレイヤー、クライアントサイドのインタラクションのためのJavaScriptレイヤーといった必要な技術を統合しており、チャット、通知、プレゼンスなどライブ機能を容易に設計できるという。
Active Record、WebSocketsのPOROドメインモデルにアクセスでき、テンプレートのレンダリングを簡単にするActionController::Rendererも追加された。なお、Action Cableの導入にあたって開発サーバーはWebrickからPumaに変更となった。
APIモードは、HTMLではなくJSONでの応答を前提とした設定を行うもの。APIのみを提供するアプリケーション作成という新しいニーズに応えるという。
また、モバイル対応としてiOSとAndroidのラッパー実装「Turbolinks 5」を含むようになった。TurbolinksはWebアプリケーションの高速なナビゲーションを可能にする技術で、iOS/Androidのアダプタを利用してネイティブナビゲーションを利用するハイブリッドアプリを構築できる。
これらに加えて、モデル上で型で属性を定義するAttributes APIも加わった。必要に応じて既存の属性を上書きするもので、値がどのようにSQLに変換されるかなどに対する制御が可能となる。Test Runnerも新しくなり、インラインの失敗も報告するようになった。またジェネレーターが生成した全モデルのデフォルトの親クラスとしてApplicaionRecordを導入した。
このほかAction Mailer、Action Pack、Action View、Active Model、Active Record、Active Support、Active Jobなど各フレームワークでも強化が加わっている。
Ruby on RailsはプロジェクトのWebサイトより入手できる。利用にはRuby 2.2.2以上が必要。
Ruby on Rails
http://rubyonrails.org/