13 – Wzorzec projektowy KOMPOZYT w języku C# – DSP2017

Witaj,
W poprzednim poście na temat wzorców projektowych przedstawiłam główne kategorie wzorców projektowych oraz krótki opis poszczególnych wzorców. Dzisiaj przedstawię jeden ze wzorców strukturalnych - Kompozyt.

Głównym zadaniem wzorca strukturalnego jest opis struktury powiązanych ze sobą obiektów.

Kompozyt (composite) cechuje się składaniem obiektów w taki sposób, aby klient widział wiele z nich jako pojedynczy obiekt.

Wzorzec ten stosuje się, gdy wygodniej jest korzystać z pewnych operacji dla danego obiektu w ten sam sposób jak dla grupy obiektów.

Wzorzec wyróżnia elementy:

  • Component - klasa abstrakcyjna reprezentująca pojedyncze obiekty Leaf orazkontenery tych obiektów.
  • Leaf - typ prosty - nie posiada potomków.
  • Composite - przechowuje obiekty proste (Leaf), implementuje zachowanie elementów które zawiera.

Użytkownik może przeprowadzać operacje na pojedynczym obiekcie, oraz na grupie obiektów reprezentowanych tym wzorcem. Zgodnie z oryginalnym opisem wzorca, zarówno klasa Component jak i Composite zawiera metody operujące na komponentach podrzędnych, które są przechowywane w klasie Composite

Wady i zalety zastosowania wzorca:

 

  • Umożliwia definiowanie hierarchii z obiektów prostych i złożonych
  • Upraszcza kod klientów
  • Ułatwia dodawanie komponentów nowego rodzaju
  • Może sprawić, że projekt stanie się zanadto ogólny

Zapraszam do zobaczenia przykładów wzorca kompozytu oraz opisu tutaj.

 

Zapraszam serdecznie do śledzenia mnie na:
Twitter
Github - piotrowinka2410

Instagram
Snapchat - piotrowinka2410
Fanpage na Facebooku 

 

 

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *