Rails 5のRails 5のbeta1がリリースされた。Microservicesに対応するための「API mode」やWebSocket用「のAction Cable」などの機能が加わっている。
Ruby言語によるWebアプリケーション開発フレームワークである「Ruby on Rails(以降、Rails)」の次期メジャーバージョンアップ版「Rails 5」のbeta1が、2015年12月18日にリリースされました。
Rails 5は、2015年4月にアトランタで行われた「RailsConf 2015 Atlanta」で、年内にリリース予定だと開発者であるDHH(David Heinemeier Hansson)氏が明らかにしていたバージョンです。
このときDHH氏はRails 5を旅行者のバックパックに例え、個人の開発者のために必要なものが一通りそろっていることを追求しつつ、最近のMicroservicesへの要求にも応えられるように、APIを中心にしてそれ以外の機能を省略してスリムダウンできる「API mode」が備わる予定であることなどを発表しました。
今回のRails 5 beta1の発表で、API modeは次のように説明されています。
Railsは、HTMLテンプレートを用いてサーバーサイドでのレンダリングを行うような、フルスタックのアプリケーションを構築するための優れた選択肢というだけではありません。クライアントサイドのJavaScriptやネイティブアプリケーションのように、バックエンドとJSONで通信するようなアプリケーションのためのものでもあります。このことをより明確にするため、「API mode」を新しく備えました
API modeでは、API以外の機能が省略されスリムダウンされたRailsが利用できるようになります。
Rails 5で提供されるもう一つの主要な機能「Action Cable」は、WebScoketを扱うためのフレームワークです。HTTPでポーリングなどをする必要なく、クライアントとサーバーが必要なタイミングで簡単に通信が行えるようになります。
DHH氏はRailsConf 2015でチャットやノーティフィケーションがとても簡単に作れるようになると紹介していました。
Action Cableは、WebSocketを用いて張った「Cable」と呼ばれる一つのコネクションで、チャットやノーティフィケーションなど用途別の通信ができる「Channel」と、サーバーサイドからユーザーに送信できる「Broadcaster」の機能が利用できるとのことです。
Railsはこれまで、シングルページアプリケーションのような、Webブラウザー側のJavaScriptで多くの処理を行う最近のWebアプリケーションとは相性が良くないと一部で言われていました。Rails 5の主要な機能となるAPI modeやAction Cableは、この課題の解決を目指したものだと考えられます。
下記は4月にアトランタで行われた「RailsConf 2015 Atlanta」でのDHH氏の講演は下記動画で確認できます。
また、Rails 5 beta1のリリースは、Ito Junichi氏によって翻訳されています。
Copyright © ITmedia, Inc. All Rights Reserved.