Decoratorパターン(8)

実生活では、多くの場合、写真フォトフレームを追加し、そのような家の装飾として、既存の製品に新しい機能を追加したり、その外観を美しくする必要があります。ソフトウェア開発プロセスでは、時にはあなたは、既存のコンポーネントの一部を使用します。これらのコンポーネントは、唯一のコア機能の一部を完了することができます。しかし、その構造を変更せずに、それは動的にその機能を拡張することができます。これのすべてが達成するために装飾的なパターンの使用を排除することができます。

まず、定義

既存の構造を変更せずにオブジェクトが、オブジェクトが動的モードいくつかの機能を増加させることである場合には、オブジェクト構造スキーマに属している(すなわち、その追加機能を増加させます)。

第二に、構造及び実現のモード

1.構造モデル

装飾的なパターンは、主に次の役割が含まれています。

  • 抽象コンポーネント(部品)の役割:追加の責任を受信する準備ができてオブジェクトを調節するために抽象インタフェースを定義します。
  • 特定のコンポーネント(コンクリートコンポーネント)役割:装飾的な役割によって、その責任の一部を追加し、抽象コンポーネントを達成します。
  • 抽象(デコレータ)装飾的な役割:抽象メンバを継承し、そして特定のメンバ関数がそのサブクラスによって拡張することができ、特定のメンバーの例を含みます。
  • 具体的な装飾(ConcreteDecorator)役割:実装依存方法抽象的な装飾、および特定のメンバーオブジェクトに追加の責任を追加します。

実現の2モード

 

おすすめ

転載: www.cnblogs.com/myitnews/p/11431139.html