Composition Over Inheritance, czyli Kompozycja ponad dziedziczeniem

przez Karol Bocian | 1 marca, 2020

Composition Over Inheritance, czyli Kompozycja ponad dziedziczeniem

Zasada mówi, że lepiej korzystać jest z kompozycji (klasa A używa klasy B) zamiast dziedziczenia po klasie. Stosując dziedziczenie, należy pamiętać, aby nie złamać Zasady podstawienia Liskov.

Zasada nie mówi, że mamy całkowicie zrezygnować z dziedziczenia.

Przykład:

Mamy Pracownika i Kierownika.

Dziedziczenie: Obaj mają imię i nazwisko. Mogą oni dziedziczyć po klasie Pracownik.

Kompozycja: Obaj mają wyliczaną pensję. Tutaj lepiej jest wstrzyknąć w Pracownika i Kierownika klasę, która odpowiada za wyliczenie ich pensji.

Zalety

  • Mniejsza zależność między klasami.
  • Rozbicie klas na mniejsze (rozbicie odpowiedzialności na różne klasy).
  • Łatwiej zachować zgodność z zasadami SOLID.
  • Łatwiejsze testowanie kodu.

Wady

  • Czasem lepiej zastosować dziedziczenie.

Wszystkie posty związane z mini projektem: Poznaj zasady SOLID i OOP:

[catlist name=”projekt-poznaj-zasady-solid-i-oop” pagination=yes orderby=date order=asc author=no numberposts=100]

Źródła

Obraz główny

Materiały

Kategoria: IT Projekt Poznaj zasady SOLID i OOP Tagi: it, OOP, programowanie, SOLID

O Karol Bocian

Programowanie i świat agentów programowalnych, który poznał na Wydziale Matematyki i Nauk Informacyjnych, wciągnął go w przemysł IT. W trakcie swojej praktyki zawodowej Karol zrozumiał, że nie ważne co się robi i kim się jest, ale wiedza z zarządzania przydaje się wszędzie. Rozpoczął studia na kierunku Zarządzanie i Inżyniera Produkcji. W przypadku Karola zarządzanie to nie tylko teoria czy praca, ale prawie każdy element jego życia, to jego pasja.