Part4続き
前回の記事では、2013年から2015年までの軌跡を振り返りました📙
今回は2016年から2018年までのRailsの軌跡についてまとめていきたいと思います!✍️
Railsの軌跡 - 第5章
2016年:Rails5.0正式リリース
長期間のベータテストを経て、2016年6月にRails5.0が正式リリースされました! 主な新機能は以下の通りです。
Rails5.0のリリース
| 機能 | 説明 |
|---|---|
| Action Cable | WebSocketをRailsの流儀で扱えるようになり、チャットやリアルタイム通知などの機能を標準で実装可能に |
| APIモード | JavaScriptフレームワーク(React/Vueなど)やモバイルアプリのバックエンドに特化した、軽量なRailsアプリを構築する設定が追加 |
| Railsコマンドの統合 | それまでrakeコマンドで行っていた操作(マイグレーション等)が、すべてrailsコマンド(rails db:migrateなど)に統合され、利便性が向上 |
| ApplicationRecordの導入 | すべてのモデルの基底クラスとしてApplicationRecordが導入され、共通のロジックや設定を一元管理できるように |
Action Cableとは?
- WebSocketを利用して、リアルタイム通信を可能にするRailsのフレームワーク
- チャットアプリや通知システムなど、リアルタイム性が求められる機能を簡単に実装できる
- Railsの既存のMVCアーキテクチャとシームレスに統合されているため、学習コストが低い
Turbolinks5の導入
-
Rails5では、Turbolinks5が導入され、従来のTurbolinksよりも高度な機能と柔軟性が提供されました。 -
Turbolinks5は、部分的なページ更新や履歴管理の改善など、より洗練されたユーザー体験を実現しました。
2017年:Rails5.1リリースとJavaScriptエコシステムの強化
2017年4月にリリースされたRails5.1では、JavaScriptエコシステムの強化に重点が置かれました⭐️
Rails5.1リリース
| 機能 | 説明 |
|---|---|
| Webpackerの導入 | JavaScriptパッケージ管理ツールのwebpackをRailsで利用可能にするラッパーが登場しました。これにより、React、Vue、Angularといったモダンなフレームワークの導入が公式にサポートされた |
| Yarnのサポート | これまではGemでJSライブラリを無理やり管理していたが、JavaScriptのパッケージマネージャーであるYarnが公式にサポートされ、JavaScriptライブラリの管理が容易に |
| System Testsの導入 | Capybaraを利用したシステムテストが標準でサポートされ、ブラウザを介したエンドツーエンドのテストが簡単に書けるようになった |
| Encrypted Secrets | 機密情報を暗号化して管理する仕組みが導入され、セキュリティが強化された |
Webpackerとは?🤔
- JavaScriptのモジュールバンドラーであるWebpackをRailsアプリケーションで簡単に利用できるようにするGem
-
app/javascriptディレクトリを作成し、ここにJavaScriptコードを配置することで、モダンなJavaScript開発が可能に - 当時、Reactなどの最新JSを使うにはWebpackというビルドツールが必須であったが、設定が難解で、Railsと組み合わせるのは至難の業だったので、Webpackerの登場は非常に大きな前進となった
私😮「正直なところWebpackとかWebpackerとかJS関連の部分ちゃんと理解できていないけど、RailsができるだけJSライブラリを使いやすくしようと改善してくれていることは分かった🙆」
2018年:Rails5.2リリースとインフラ機能の強化
2018年4月にリリースされたRails5.2では、これまで外部ライブラリに頼っていた多くの機能が標準化されました🔧
Rails5.2リリース
| 機能 | 説明 |
|---|---|
| Active Storageの導入 | Amazon S3やGoogle Cloud Storageなどのクラウドストレージへのファイルアップロード・管理を、モデルから直接扱えるようになった。画像のリサイズ(要ImageMagick等)も標準でサポート |
| Bootsnapの標準採用 | アプリケーションの起動を劇的に高速化する bootsnap がデフォルトで有効になり、開発時の待ち時間がさらに短縮 |
| Redis Cache Storeの標準サポート | Redisをキャッシュストアとして公式にサポートし、高速なキャッシュ運用が可能に |
| Encrypted Credentials | 機密情報管理の新しい仕組みが導入され、config/credentials.yml.encに暗号化された形式で保存されるようになった |
GitHubの買収
- 2018年6月に
Railsで構築された世界最大の開発プラットフォームGitHub が、Microsoftによって買収されるという衝撃的なニュースがありました。
DHH氏の主張
- DHH氏は、この頃からJavaScriptを多用するSPAの流行に対して懐疑的な立場を強め、Rails単体でユーザー体験を完結させることの重要性を再度強調しました。
- これがのちの
HotwireやStimulusの登場につながっていきます。
Part6へ続く
次回は2019年から2021年までの軌跡を振り返ります📙
参考記事



