$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Laravel8.xまでの大きな変更点を振り返る
Search
namizatork
May 29, 2021
Programming
0
530
Laravel8.xまでの大きな変更点を振り返る
namizatork
May 29, 2021
Tweet
Share
More Decks by namizatork
See All by namizatork
PHPのエラーを理解して適切なエラーハンドリングを学ぼう
namizatork
2
3.9k
もう細かいレビューは したくない、されたくない
namizatork
1
1.4k
PHPの静的解析 ついでにLarastan
namizatork
1
590
Livewireは魔法??コードリーディング してみた
namizatork
1
360
Laravelワカンネ(゚⊿゚)から「完全に理解した()」までステップアップ
namizatork
1
1.1k
Laravelの「Hello World」を 表示するまでの処理を追ってみた
namizatork
0
1.4k
Laravel Hands-on
namizatork
0
370
SPA/PWA/AMPってなに?
namizatork
1
17k
Other Decks in Programming
See All in Programming
Tinkerbellから学ぶ、Podで DHCPをリッスンする手法
tomokon
0
120
DSPy Meetup Tokyo #1 - はじめてのDSPy
masahiro_nishimi
1
160
AIコードレビューがチームの"文脈"を 読めるようになるまで
marutaku
0
350
ID管理機能開発の裏側 高速にSaaS連携を実現したチームのAI活用編
atzzcokek
0
220
まだ間に合う!Claude Code元年をふりかえる
nogu66
5
770
ハイパーメディア駆動アプリケーションとIslandアーキテクチャ: htmxによるWebアプリケーション開発と動的UIの局所的適用
nowaki28
0
400
バックエンドエンジニアによる Amebaブログ K8s 基盤への CronJobの導入・運用経験
sunabig
0
150
LLM Çağında Backend Olmak: 10 Milyon Prompt'u Milisaniyede Sorgulamak
selcukusta
0
120
Rediscover the Console - SymfonyCon Amsterdam 2025
chalasr
2
160
從冷知識到漏洞,你不懂的 Web,駭客懂 - Huli @ WebConf Taiwan 2025
aszx87410
2
2.1k
안드로이드 9년차 개발자, 프론트엔드 주니어로 커리어 리셋하기
maryang
1
110
開発に寄りそう自動テストの実現
goyoki
1
840
Featured
See All Featured
Become a Pro
speakerdeck
PRO
31
5.7k
Code Review Best Practice
trishagee
74
19k
Product Roadmaps are Hard
iamctodd
PRO
55
12k
Making the Leap to Tech Lead
cromwellryan
135
9.7k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.2k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
34k
We Have a Design System, Now What?
morganepeng
54
7.9k
Done Done
chrislema
186
16k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
22k
Rails Girls Zürich Keynote
gr2m
95
14k
Navigating Team Friction
lara
191
16k
Visualization
eitanlees
150
16k
Transcript
www.bengo4.com Laravel8.xまでの 大きな変更点を振り返る 2021.05.29 namizato
はじめに 2
Bengo4.com, Inc. 3 「大きな変更点」とタイトルを付けていますが、主語がデカすぎました() パフォーマンスの向上とかよりも個人的に気になった変更点や、 実装している上でこれは便利になったなーと感じた追加機能などについてお話しします。 ノリでタイトル決めるのだめ絶対
4 4 並里 辰也(ナミザト タツヤ) 自己紹介 沖縄PHPカンファレンス2021 実行委員(広報) 弁護士ドットコム株式会社 在籍そろそろ1年
Laravelが好きでたまにQiitaに投稿してます @namizatork
Bengo4.com, Inc. 弁護士ドットコム というサービス • 一般市民と弁護士を結びつ け、お悩み解決を目指す • 2005年サービス開始 •
約900万セッション/ 月 • 約300件の法律相談/ 日 5
Bengo4.com, Inc. 目次 • Laravelが人気の訳 • セマンティック・バージョニング • PHP6.xでの追加・変更点 •
PHP7.xでの追加・変更点 • PHP8.xでの追加・変更点 6
Laravelが人気な訳 7 今更感がありますが、あえて説明しておきます
Bengo4.com, Inc. Laravelが人気の訳 • 日本語含めてドキュメントが豊富 • MVCが標準サポートされているので、開発者によって実装が左右されにくい • XSS/CSRF/SQLインジェクションなどのセキュリティ対応がされている •
柔軟な設計が可能( DDD/クリーンアーキテクチャなど簡単に導入ができる) • ORM(Eloquent)が標準サポートされているので、柔軟なデータ操作が可能 • PHPのコードでDBを管理できるマイグレーションに標準対応 • クラスの依存関係を管理するサービスコンテナ • クラスインスタンス化せずとも staticメソッドの様に呼び出すことができる Facade • Controllerの前後にフィルタリングを設定できるミドルウェア • etc.. 8
セマンティック・ バージョニング 9
Bengo4.com, Inc. セマンティック・バージョニング 2021年5月現在最新の LTS は Laravel6.x(2021年9月に次のLTS最新9.xリリース予定) このリリースを機に Laravel では
セマンティック・バージョニング が採用されました。 これまでの Laravel(5.x) では 5.1 > 5.2 > 5.3 と上がっていたのに対して、 6 > 7 > 8 の様にアップデートされる様になりました。 つまり 6.x は実質 5.9(5.xの最新が5.8のため) の様な扱い 10
Laravel6.xの 追加・変更点 11
Bengo4.com, Inc. 文字列と配列のヘルパの 変更 str_ と array_ ヘルパが使用できな く なりました(別パッケージへ移行され
ました) Laravel5.8からアップグレードした時 にこの辺りで引っかかることが多々あ りました。 12 これまで 6.x
Bengo4.com, Inc. 認証機能のUIが分離された laravel6.xから認証機能が laravel/ui という別パッケージで管 理される様になりました。 これによって5.xまでは標準で組み込 まれていたBootstrapとVueがデ フォルトから外され、スカフォールドを
任意のFWから選ぶことができる様に なりました。 13 これまで 6.x
Bengo4.com, Inc. Laravel6.xその他追加・変更点 • Lazy Collection • ジョブミドルウェア • Eloquentサブクエリの向上
• 認可レスポンスの向上 • etc... 14
Laravel7.xの 追加・変更点 15
Bengo4.com, Inc. Guzzleをラップした HTTP Client これまでは GuzzleHttpClient を 使用する必要がありましたが、 Laravel7.x
から Guzzle をラップした HTTP Client が標準で搭載される 様になりました。 これにより、Guzzleの長いコードを書 かなくて済むようになりました。 16 これまで 7.x
Bengo4.com, Inc. Sanctumの導入 SPAに対しての認証機能を容易に提 供してくれるLaravelのパッケージで す。(元々は AirLock という名前だっ た) Token
を利用した API Tokens と Cookie を利用したSPA Authentication の2つの機能があ ります 17
Bengo4.com, Inc. ViewComponentの導入 Blade のコンポーネントクラスやタグ が利用できるようになりました。 Blade(ビュー)とロジックの責務が分 けれる様になり、さらにコンポーネント 化により共通化もできる様になった。 18
Bengo4.com, Inc. Laravel7.xその他追加・変更点 • ルートキャッシュスピードの向上 • カスタムEloquentキャスト • ルートモデル結合の向上 •
etc... 19
Laravel8.xの 追加・変更点 20
Bengo4.com, Inc. マイグレーションの圧縮 プロジェクトが大規模になるにつれて 増えていくマイグレーションファイルを 圧縮することができます。 やり方は簡単で右のコマンドを入力 するだけで database/schema に
書き込まれます。 21 既存のマイグレーションを削除する option
Bengo4.com, Inc. Jetstreamの導入 ログイン、ユーザー登録、メール認 証、二要素認証、セッション管理、 Laravel SanctumによるのAPIサ ポート、およびオプションのチーム管 理が用意されている。 Tailwind
CSSを使用していて、 Livewire か Inertia のどちらかのス カフォールドを選択できます。 22
Bengo4.com, Inc. Livewireの導入 Bladeを利用していればJavaScript を書かずにPHPだけでSPAを実装で きる様にしたパッケージ 開発者曰く、Laravelを知っている人 なら誰でも書けるので学習コストが低 いらしい() 23
Bengo4.com, Inc. Laravel8.xその他追加・変更点 • モデルファクトリクラス • Modelsディレクトリをデフォルト化 • ジョブバッチ •
レート制限の向上 • イベントリスナの向上 • タイムトラベル(時間操作テスター) • etc... 24
ご清聴ありがとう ございました。 25