- Sklonuj repozytorium
- Opisz w pliku codereview.txt problemy, które dostrzegasz w kodzie klasy
Refactoring\Products\Product
i jak można je rozwiązać. - Dokonaj Refactoryzacji klasy
Refactoring\Products\Product
wprowadzając opisane przez siebie rozwiązania. Celem jest, aby:- klasa ta była bardziej przejrzysta - miała mniej odpowiedzialności,
- żeby dało się łatwiej wprowadzać zmiany w logice biznesowej tej klasy,
- żeby była łatwiej testowalna,
- istniejący interfejs klasy się nie zmienił.
- Jeśli Twoje zmiany tego wymagają, popraw lub dopisz brakujące testy jednostkowe.