generated at
Service Locatorパターン




状況
具体的なクラスを呼びたくない、依存したくない

パターン
サービスロケータークラスが、抽象層と具象層を仲介する

メリット
シンプル
依存性を管理できやすくなる

デメリット
依存関係が外部から見えづらくなる
テストがしにくいというデメリットがある
どこからでもサービスアクセス可能にするとシングルトンのデメリットが出てくる

サービスロケーターが初期化される前にサービスを呼び出そうとするとNULLになる
そこで、NullObjectパターンが有効