SOLID

przez | 7 lutego, 2020

SOLID

SOLID jest podstawowym pojęciem w programowaniu obiektowym. Został przedstawiony przez Roberta C. Martina, który zebrał 5 zasad w skrót SOLID. Jest to akronim 5 zasad dobrego programowania obiektowego:

  • Single responsibility principle – Zasada jednej odpowiedzialności.
  • Open/closed principle – Zasada otwarte-zamknięte.
  • Liskov substitution principle – Zasada podstawienia Liskov.
  • Interface segregation principle – Zasada segregacji interfejsów.
  • Dependency inversion principle – Zasada odwróconej zależności.
Bestseller dnia w księgarni Złote Myśli

Single responsibility principle – Zasada jednej odpowiedzialności

Każda klasa powinna mieć tylko jedną odpowiedzialność (czyli tylko jeden powód do modyfikacji klasy) – jeden cel istnienia.

Open/closed principle – Zasada otwarte-zamknięte

Wszystkie klasy powinny być otwarte na rozszerzenia, ale zamknięte na modyfikacje.

Liskov substitution principle – Zasada podstawienia Liskov

Oprogramowanie powinno dobrze działać, gdy w miejsce klasy bazowej podstawimy jej którąkolwiek klasę potomną.

Interface segregation principle – Zasada segregacji interfejsów

Wiele dedykowanych i małych interfejsów jest lepsze niż jeden ogólny.

Dependency inversion principle – Zasada odwróconej zależności

Wysokopoziomowe moduły nie powinny zależeć od modułów niskopoziomowych, lecz zależność powinna wynikać z abstrakcji.

Zalety

  • Większa czytelność kodu.
  • Wyższa jakość kodu.
  • Tańsze utrzymywanie.
  • Mniej błędów podczas rozwoju.
  • Łatwiejsze testowanie.
  • Łatwiejsze rozwijanie kodu.
  • Brak klas-bogów.

Wady

  • Większa pracochłonność podczas tworzenia kodu.

Podsumowanie

Stosuj zasady SOLID wszędzie tam, gdzie możesz. Są to najlepsze praktyki, jakie możesz wykorzystać. W wyjątkowych sytuacjach pozwalaj sobie na odejście od tych reguł, na rzecz szybszego napisania aplikacji. Postaraj się, łamiąc zasady SOLID, napisać i tak w miarę dobry kod.

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

Źródła

Obraz główny

Materiały

Dodaj komentarz

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