- S - Single responsibility (jedna odpowiedzialność)
- O - Open/close (otwarcie na rozszerzanie, zamknięcie na modyfikowanie)
- L - Liskov substitution (zasada podstawienia)
- I - Interface segregation (segregacja interfejsów)
- D - Dependency inversion (odwrócenie zależności)
The Single Responsibility Principle
A class should have only one reason to change.
Klasa powinna mieć tylko jedną odpowiedzialność. Klasy zbyt rozbudowane mogą powodować konflikty - kilka zespołów programistów może pracować na tym samym kodzie co może generować problemy i niepotrzebną stratę czasu.
The Open/Closed Principle
Software entities (classes, modules, functions, etc.) should be open for extension, but closed for modification.
Liskov substitution
Subtypes must be substitutable for their base types.
Podklasy powinny w taki sposób nadpisywać metody głównej klasy aby zburzyć założonej funkcjonalności z punktu widzenia klienta.
Interface segregation
Zasada segregacji interfejsów mówi o sposobie komunikacji między logiką biznesową a klientem. Aplikacja złożona z modułów powinna opierać się na interfejsach z których klient może korzystać. Należy przy tym pamiętać, że klient nie powinien mieć dostępu do części interfejsu, z których nie korzysta.
Dependency inversion
Dependency inversion - odwrócenie zależności - założenie, która polega na tym aby moduły wyższego poziomu komunikowały się z modułami niższego poziomu za pomocą ustalonego poza nimi zbiorem zasad (interfejsem). Zabieg ten pozwala na łatwiejsze późniejsze modyfikowanie programu.
Brak komentarzy:
Prześlij komentarz