Solid

Łamanie enkapsulacji w klasach testowanych

Posted on Updated on

Oglądałem jeden z odcinków o testach by Seemann na Pluralsight.

Autor nie widział nic złego w udostępnianiu publicznie wstrzykiwanych zależności lub danych. Ułatwia to testowanie, lecz niestety łamie zasadę enkapsulacji. Nie jest to jednak złe ponieważ gdy korzystamy z interfejsow (a nie wyobrażam sobie żeby było inaczej) to w kodzie produkcyjnym nie będziemy mieli do tego dostępu. Oczywiście nie robimy hacków z castowanie itp. Wtedy takie udostępnione dane mogą być dotykane tylko w testach i może dzięki temu kod będzie prostszy.

Update:
Chociaż jak to tak teraz czytam to przypomina mi się inny talk który mówi o tym że to jednak zły design bo cokolwiek pokazujemy na zewnątrz może kiedyś wypłynąć.

Advertisements