概念的な例
この例は、 Adapter デザインパターンの構造を説明するためのものです。 以下の質問に答えることを目的としています:
- どういうクラスからできているか?
- それぞれのクラスの役割は?
- パターンの要素同士はどう関係しているのか?
ここでパターンの構造を学んだ後だと、 これに続く、 現実世界の PHP でのユースケースが理解しやすくなります。
index.php: 概念的な例
Output.txt: 実行結果
現実的な例
Adapter パターンでは、 自分のコードの大部分と互換性がない他社作成のクラスや旧来のクラスを使えるようにします。 たとえば、 Slack、 Facebook、 SMS、 (その他適宜) などの他社のサービスをサポートするために自分のアプリの通知インターフェースを書き直す代わりに、 アプリからの呼び出しを、 それぞれの他社作成クラスが要求するインターフェースとデータ形式に適合させる特別なラッパーを書くことができます。
index.php: 現実的な例
Output.txt: 実行結果