【実践】LaravelでFat Controllerをリファクタしよう〜DIコンテナ・テストコードまで〜
あらかじめFat Controllerで開発されたソースコードをリファクタリングしながら、実践的なクラス設計を学べる教材です。2021年に公開後、延べ200人以上に活用いただいた教材をZennでも公開開始しました!スタートアップのCTOとして設計のトレードオフと向き合ってきた筆者が、「DDDやクリーンアーキテクチャの前にまずはここから学んでほしい」という基礎を徹底解説します
Chapters
LaravelでFat Controllerを卒業しよう
本教材の全体的な流れ
環境構築(Mac)
設計を学ぶ上での注意点
筆者について
今回卒業するFat Controllerの処理を読んでみよう
「ユースケース」を作る目的
「ユースケース」を置くディレクトリを作ろう
「ユースケース」クラスを作ろう
「ユースケース」に処理を引っ越ししよう
【FAQ】Modelごとにユースケースを作るのはだめですか?
Fat Controllerの特徴
Fat Controllerの問題点
今回卒業するFat Controllerの処理を読んでみよう
ブックマーク作成リクエストをFormRequestで表現しよう
ログインチェック処理をMiddlewareに移行しよう
他の処理を「ユースケース」に移行しよう
Before-Afterを見比べよう
【FAQ】処理を移行したらどのような処理が行われているかわからなくなりました
インターフェースとサービスコンテナについて学ぼう
CreateBookmarkUseCaseのテスタビリティ
メタ情報取得処理を別クラスに切り出してみよう
切り分けたクラスに対応するインターフェースを作成しよう
CreateBookmarkUseCase をインターフェースに依存させよう
実際に外部アクセスはしない”モック”を作成しよう
サービスコンテナとサービスプロバイダを使ってみよう
テストコードの書き方
ブックマーク一覧ユースケースのテストを書こう
ブックマーク作成ユースケースのテストを書こう
GitHub Actionsでテストコードを自動化しよう
【総集編】テストコードを駆使してリファクタにチャレンジ!
総まとめ
Community
Author
オンライン家庭教師マナリンク( manalink.jp )のCTO。好きなプログラミング言語はTypeScript、好きなHTTPヘッダーはContent-Disposition。 2016年からWebエンジニア。2019年からCTO。記事を読んで技術談義したい方などいらっしゃればXでDMください
Topics
- 公開
- 本文更新
- 文章量
- 約134,898字
- 価格
- 1,900円