[Laravel]Facadeもどきを実装してFacadeの仕組みを理解する
こんにちは、ナカエです。
Laravel初心者にさっさとFacadeを使わずにコードを書けるようになって欲しくてどう教えるべきか色々考えています。
Facadeの仕組みを理解する最良の方法(仮
偉い人は言いました。
「ソフトウェアやライブラリの仕組みがわからなかったら自分で実際に実装してみればいいよ」
と。
つまり初見では何をやっているかわかりづらいLaravelのFacadeも、 一度Facadeと同じような仕組みを実装させてしまえば初心者でも完全に理解できるのでは???
サンプルのリポジトリを作りました。
というわけで、LaravelのFacadeの仕組みを実装しながら学ぶための簡単なサンプルを用意しました。
- 簡易ファサード
- サービスコンテナ
- ファサードとサービスコンテナの統合
- サービスプロバイダ
- ファサードを使わない実装
ステップごとに実装していきます。
それぞれのステップが1ファイルで完結していてコンソールから実行できます。
git clone https://github.com/n1215/learn-laravel-facade your-dir-name
cd your-dir-name
php step01.php
最終的なコード量はサービスコンテナ、サービスプロバイダ、ファサード、ファサードの実体クラス、アプリケーションのブートストラップで180行くらい(コメント含む)です。
https://github.com/n1215/learn-laravel-facade/blob/master/step04.php
絶賛人柱を募集中です。ご自由にご利用ください。