免責事項: この一連のブログの参考資料は、Cheng Jie 著の「Dahua Design Pattern」です。
デコレータパターンはデコレータパターンとも呼ばれます。デコレーション モードは、元のクラス ファイルを変更したり継承を使用したりすることなく、オブジェクトの機能を動的に拡張します。ラッピングオブジェクト、つまり装飾を作成することで、実際のオブジェクトをラッピングします。
UML クラス図:
1. オブジェクトに関数を動的に追加する必要があり、これらの関数は動的に取り消すことができます。
2. いくつかの基本関数の順列と組み合わせによって生成される非常に多くの関数を追加する必要があるため、継承関係が非現実的になります。
3. サブクラスの生成方法が拡張に使用できない場合。場合によっては、多数の独立した拡張機能があり、それぞれの組み合わせをサポートするために多数のサブクラスが生成され、サブクラスの数が爆発的に増加することがあります。別のケースとしては、クラス定義が非表示になっているか、クラス定義を使用してサブクラスを生成できないことが考えられます。 🎝