LoginSignup
0
0

Laravel学習メモ:ファサード

Posted at

参考

  • ファサードは、アプリケーションのサービスコンテナで使用可能なクラスに対して「静的な」インターフェイスを提供

  • サービスコンテナ内の基礎となるクラスへの静的プロキシとして機能する

  • 従来の静的メソッドに加えてテスト容易性と柔軟性を維持しつつ簡潔で表現力豊か

  • Laravelのファサードはすべて、Illuminate\Support\Facades名前空間で定義

    use Illuminate\Support\Facades\Cache;
    use Illuminate\Support\Facades\Route;
    
    Route::get('/cache', function () {
        return Cache::get('key');
    });
    
  • ヘルパ関数

    • ファサードを補完するためにグローバルなヘルパ機能が提供される
    • view, response, url, configなどが一般的
  • ファサードを利用する注意点

    • ファサードの危険性
      • スコープクリープ
        • 1つのクラスで多くのファサードを利用するのは簡単だが
        • クラスが大きくなりすぎる
    • クラスのサイズに注意して責任範囲が狭くなるようにすること
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0