Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Laravel8.xまでの大きな変更点を振り返る
Search
namizatork
May 29, 2021
Programming
580
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Laravel8.xまでの大きな変更点を振り返る
namizatork
May 29, 2021
More Decks by namizatork
See All by namizatork
PHPのエラーを理解して適切なエラーハンドリングを学ぼう
namizatork
2
4.2k
もう細かいレビューは したくない、されたくない
namizatork
1
1.5k
PHPの静的解析 ついでにLarastan
namizatork
1
640
Livewireは魔法??コードリーディング してみた
namizatork
1
410
Laravelワカンネ(゚⊿゚)から「完全に理解した()」までステップアップ
namizatork
1
1.2k
Laravelの「Hello World」を 表示するまでの処理を追ってみた
namizatork
0
1.4k
Laravel Hands-on
namizatork
0
390
SPA/PWA/AMPってなに?
namizatork
1
17k
Other Decks in Programming
See All in Programming
App Storeの外へ──日本のiOSサイドローディング入門 for iOSDC Japan 2026
yuukiw00w
0
200
一参加者から『中の人』へ 〜全通PHPerがブースに立って学んだ、カンファレンスを100倍楽しむコツ〜
wp_daisuke
0
150
kubernetes コンポーネント開発入門 / 新卒N年目の勉強会&交流会!〜〇〇への誘い〜 #n_study
mazrean
0
230
スマート反転とウェブアクセシビリティ
camiha
0
200
TiDB Cloudのカスタムコントローラーによるオートスケール対応
takaidohigasi
0
110
Security issues being discussed on Web Platforms
petamoriken
0
890
Omarchy Tokyo やると聞いて UMPC 買ってセットアップしてきた
mtsmfm
0
140
手動確認はもう限界 〜XCUITestでCustom URL Schemeの遷移を起動種別ごとに自動テストする〜 / Testing Custom URL Schemes with XCUITest
otouto
0
230
仕様駆動開発による爆速プロダクト開発 / Bakusoku Spec Driven Development
kobakei
0
110
VueプロジェクトをTypeScript7に対応させる- Side-by-Side戦略による一部高速化 -
koukimiura
0
110
LL言語やWebフレームワークのPostgreSQL対応 〜DBの機能がユーザーに届くまで〜
kentaroutakeda
1
150
cdk deploy JawsSonic #MARATHONしながらAWSリソースをデプロイしてみよう
akihisaikeda
2
130
Featured
See All Featured
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.9k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.9k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
2
3.8k
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
230
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
350
A better future with KSS
kneath
240
18k
So, you think you're a good person
axbom
PRO
2
2.2k
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
660
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.4k
Game over? The fight for quality and originality in the time of robots
wayneb77
1
270
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
520
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