トップQs
タイムライン
チャット
視点
Laravel
Webアプリケーションフレームワークの一つ ウィキペディアから
Remove ads
Laravel は、MVCのWebアプリケーション開発用の自由かつオープンソースのPHPで書かれたWebアプリケーションフレームワークである。様々なコミュニティのコンポーネントを使用しており、特にSymfonyは9つのコンポートを利用するなど重要な基盤となっている。LaravelはMITライセンスの下でリリースされており、そのソースコードはGitHubにホスティングされている[3]。マイクロソフトの.NETの開発に関わっていたTaylor Otwell が開発し、Taylorを中心としたコミュニティーが活発な開発を続けている[4]。
2023年12月現在、GitHubでのスター獲得数がPHP, Ruby, Python等のバックエンド系プログラミング言語のフレームワーク中で最も多いなど、人気のフレームワークの1つとなっている[5] [6]。
2025年2月24日、Laravel News[7]において、バージョン12がリリースされたことが発表された[8]。
今後も約12ヶ月毎にバージョンアップを行い、Symfonyのリリースの2ヶ月後を目途にLaravelのリリースも行われる予定となっている[9]。
Remove ads
特徴
主要なWebアプリケーションフレームワークの中では後発のフレームワークであるLaravelのバージョン1は2011年6月にリリースされた。バージョン1のリリース後、バージョン2(2011年11月)バージョン3(2012年2月)と早いペースでリリースされた後、バージョン4(2013年5月)ではコードがゼロベースから書き直され、当時スタンダードになりつつあったパッケージ管理システムのComposerを採用し、PHPの歴史のあるフレームワークであるSymfonyのコンポーネントを利用するなど、抜本的な変更が行われた。[10] 2015年2月にリリースされたバージョン5.0はもともとバージョン4.3としてリリースが予定されていたところ、変更点が大きいということでメジャーバージョンアップ扱いになった経緯がある。[10] コミュニティーの活発な活動を背景に、1年に1度以上のメジャーバージョンアップがあり、またマイナーバージョンアップでも繰り返し機能追加等が行われている。セキュリティフィックスの期限も比較的短期間であるために、Laravelで作られたWebアプリケーションは常に最新のバージョンに対応していく必要がある。バージョン5.5やバージョン6はLTS(Long Term Support)となっており、これらはセキュリティフィックスの期限が3年間となっていたため、LTSのバージョンを利用するユーザは他のバージョンから比較して多かった[11]。しかし、当初LTSの予定だったバージョン9はLTSではなくなり、またバージョン10もLTSではなかったため、利用するユーザはEOLまでに今後リリースされる新しいバージョンへ対応していく必要がある。
LaravelはフルスタックのWebアプリケーションフレームワークであり、ルーティング、リエクスト処理、ビュー、クエリビルダー、ORM(オブジェクト関係マッピング)、DI(依存性の注入)、認証等のユーザ管理、ユニットテスト、ブラウザテスト等、現代的なフレームワークが要求される一通りの機能を実装している。またコンソールからArtisanコマンド(Ruby on Railsのrailsコマンドに相当)を利用することにより、コントローラやビューの雛形の作成、データベーススキーマの作成等、一通りの作業を行うことができる。また、ユーザのオリジナルのArtisanコマンドを作成したり、コントローラ等の通常のコード内からArtisanコマンドを呼び出すといったこともできる。
Remove ads
バージョン
- LTS(Long Term Support) のリリースはバグフィックスが2年間、セキュリティフィックスは3年間
- LTSではない通常のリリースはバグフィックスが18ヵ月、セキュリティフィックスは2年間[41]
- バージョン6より、セマンティックバージョニング[42]を採用したため、バージョンナンバーのインクリメントはバージョン5系の時代と大きく異なる。
Laravel 4 | Laravel 5 |
---|---|
app/commands | app/Console |
app/config | config |
app/controllers | app/Http/Controllers |
app/database | database |
app/lang | resources/lang |
app/models | app |
app/start | 無し |
app/storage | storage |
app/tests | tests |
app/views | resources/views |
app/filters.php | 廃止(app/Providers/FilterServiceProviderに定義) |
app/routes.php | app/Http/routes.php(5.2以降はapp/routes/api.phpに定義) |
app/database/production.sqlite | storage/database.sqlite(ファイルはないので自分で作る必要あり) |
他のWebアプリケーションフレームワークとの比較と動向
- バックエンドのフレームワークにおいて、PHPのLaravel、PythonのDjango、RubyのRuby on Railsが3大バックエンドフレームワークと見なされることもある[45]。
- Stack Overflowの質問数でも他のPHPのWebアプリケーションフレームワークがシェアを落とす中、Laravelはシェアを上げており、事実上のPHPのWebアプリケーションフレームワークのデファクトスタンダードと言える状態になっている。[46]
- Laravelはベンチマークにおいて他の主要なPHPのWebアプリケーションフレームワークと比較した際、時間あたりのリクエストの処理数は少なく、メモリ使用量は多めである傾向がある[47][48][49][50]。
カンファレンス
Laraconは Laravelのコンベンション(カンファレンス)のことである[51]。様々なスポンサーの追加支援を受けたUserScape[52]によって大規模にオーガナイズ化されて開かれている[53][54][55]。
Remove ads
ライセンス
LaravelはMITライセンス[79]の下にライセンスされているオープンソースのソフトウェアである[80]。すなわち、Laravelを誰でも自由・無制限に扱って良い。ただし、著作権表示および本許諾表示をLaravelのすべての複製または重要な部分に記載しなければならない。作者または著作権者は、ソフトウェアに関して一切の責任を負わない。
名前の由来
関連するフレームワーク
Laravelを軽量化したマイクロフレームワークとして、Lumenがある。[82]
関連項目
脚注
外部リンク
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads