
2023年2月14日にLaravel 10がリリースされたので、半年が過ぎた今更レビューするのは遅い感があります...😅。当時はLaravelの存在を知り始めたばかりで、バックエンドに関する知識がない状態だったので、どのような部分がアップグレードされたのかについて調べる余裕もなかったと思います。最近、Laravelを勉強し始めた友人からこんな質問を受けました。
9バージョンと10バージョンは何が変わったの?
この質問に答えられず、気になり始めたので、調べて整理してみたいと思います。
それで何が変わったの?
必要なPHPバージョン
Laravel 10はPHP 8.1以上をサポートします。Laravel 9はPHP 8.0以上をサポートしているので、Laravel 10にアップグレードするにはPHPのバージョンをアップデートする必要があります。
新機能
- 新しいIgnition CLIツール: Laravelアプリケーションの開発とテストに役立つ新しいCLIツールです。Ignitionは次のような機能を提供します。
- アプリケーションの基本構造を作成します。
- データベースを初期化します。
- ルーティングとコントローラを生成します。
- テストケースを生成します。
- 新しいBladeテンプレート機能:Bladeテンプレートの新機能と改善が追加されました。
- 新しい
@switch
ディレクティブ: 条件付きレンダリングのための新しいディレクティブです。 - 新しい
@empty
ディレクティブ: 値が空かどうかを確認するディレクティブです。 - 新しい
@forelse
ディレクティブ: イテラブルを繰り返すディレクティブです。 - 新しい
@isset
ディレクティブ: 変数が設定されているかどうかを確認するディレクティブです。
- 新しいLaravel Scout機能:Laravel Scoutの新機能と改善が追加されました。
- 新しいAlgoliaドライバー:Algolia検索エンジンをサポートする新しいドライバーです。
- 新しいElasticsearchドライバー:Elasticsearch検索エンジンをサポートする新しいドライバーです。
- 新しいクエリの改善:クエリのパフォーマンスが向上しました。
- 新しいLaravel Sanctumの機能:Laravel Sanctumの新機能と改善が追加されました。
- 新しいアクセストークンの改善:アクセストークンの有効期間が長くなりました。
- 新しいトークンキャッシュ:トークンをキャッシュしてパフォーマンスを向上させることができます。
- 新しいトークン更新:トークンを更新できる機能が追加されました。
改善点
- 全体的な性能向上:Laravel 10にアップグレードされ、全体的な性能が向上しました。
- 新しいルートパッケージ:新しいルートパッケージを導入しました。 このパッケージは、アプリケーションの起動時間を短縮します。
- 新しいクエリの最適化:クエリのパフォーマンスを最適化するための改善が含まれています。
- セキュリティの改善: Laravel 10にはセキュリティの改善が含まれています。
- 新しいCSRF保護の改善:CSRF保護が強化されました。
- 新しいXSS保護の改善:XSS保護が強化されました。
- 新しいファイルアップロード保護の改善:ファイルアップロード保護が強化されました。
- 安定性向上: 安定性が向上しました。
- 新しいバグ修正: Laravel 10には以前のバージョンで発見されたバグが修正されました。
- 新しいテスト追加: Laravel 10には新しいテストが追加され、安定性が向上しました。
やっぱりアップグレードしたほうがいいよね?
Laravel 10にアップグレードすると、新しい機能と改善点を提供するため、Laravelアプリケーションを最新の状態に保つためにLaravel 10にアップグレードすることをお勧めします。
それでどうやってアップグレードするの?
- Laravel 10をインストールします。最新バージョンなのであえてバージョンを入力しなくても10バージョンでインストールされます。
composer require laravel/framework
- Laravel 10にアプリケーションをアップグレードします。
php artisan migrate
- アプリケーションの依存関係を更新します。
composer update
- アップグレード時に発生したエラーがないか、アプリケーションをテストします。
php artisan test
これらの手順に従えば、アプリケーションをLaravel 10に正常にアップグレードすることができます。
まとめ
勉強し始めた時点では9でしたが、実質的にLaravel10しか使った経験がないので、どんな点が改善されたのかよく分からないまま使ってきたと今になって思います。どのような点が改善されたのか調べながら楽しさを感じたり、フレームワークの変更点を把握してこれを活用しなければならないという教訓も得ることができました。
댓글