Polymorphism w zasadach GRASP

Różne odpowiedzialności w zależności od typu danych.


Problem:

Co zrobić, gdy odpowiedzialność różni się w zależności od typu?

Rozwiązanie:

Przydziel zobowiązania, przy użyciu polimorfizmu, typom dla których to zachowanie jest różne.
Komentarz:
Zbiór obiektów może mieć zbiór zachowań wspólnych oraz zbiór zachowań odmiennych. Dla zachowań odmiennych powinniśmy wykorzystać mechanizm polimorfizmu. Podobny efekt można uzyskać korzystając z konstrukcji if-else jednak nie jest to dobra praktyka, ponieważ w przypadku zmian trzeba odszukać i zaktualizować wszystkie miejsca w programie zawierające te konstrukcje. Prowadzi to do powstania kodu trudnego i drogiego w utrzymaniu.
Komentarze facebook (polub nasz profil na FB aby je zobaczyć):