Zasada otwarte/zamknięte

zasada otwarte/zamkniete

“Klasy powinny być otwarte na rozszerzanie, ale zamknięte na modyfikacje.” Zasada OCP daje wskazówkę jak tworzyć klasy. Podczas ich tworzenia, trzeba zapewnić im możliwość rozszerzenia w przyszłości. Wprowadzanie zmian do istniejącej klasy jest zawsze ryzykowne, nie wiemy jak zmiany wpłyną na funkcjonowanie pozostałego kodu programu. Zasadę tą w praktyce można wdrożyć wykorzystując np. dziedziczenie, interfejsy, wzorce projektowe.

Przykład programu przed wdrożeniem zasady otwarte/ zamknięte (OCP):

zasada otwarte/zamkniete

Gdy do aplikacji będzie trzeba w przyszłości dodać kolejny rodzaj płatności, utworzoną w ten sposób klasę ChoicePaymentMethod będzie trzeba zmodyfikować. Lepszym rozwiązaniem zgodnym z metodą OCP jest zastosowanie np. dziedziczenia z klasy abstrakcyjnej i stworzenie dla każdej metody płatności osobną klasę. Rozwiązanie to pozwala na dodawanie kolejnych metod płatności, gdy będzie taka potrzeba.

zasada otwarte/ zamknięte_po

Dodaj komentarz

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