概念的な例
この例は、 Facade デザインパターンの構造を説明するためのものです。 以下の質問に答えることを目的としています:
- どういうクラスからできているか?
- それぞれのクラスの役割は?
- パターンの要素同士はどう関係しているのか?
ここでパターンの構造を学んだ後だと、 これに続く、 現実世界の PHP でのユースケースが理解しやすくなります。
index.php: 概念的な例
Output.txt: 実行結果
現実的な例
Facade を、 複雑なサブシステムに対する単純化アダプターと考えてみてください。 Facade は、 複雑さを一つのクラスに隔離することにより、 アプリケーション・コードが分かりやすいインターフェースを使えるようにします。
この例では、 ファサードが、 YoutTube API と FFmpeg ライブラリーの複雑さをクライアント・コードから隔離します。 数十ものクラスと関わる代わりに、 クライアントはファサード上の単純なメソッド一つを使用します。
index.php: 現実的な例
Output.txt: 実行結果