Zpo-8-wyk-Slajd33: Różnice pomiędzy wersjami

Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
Bwalter (dyskusja | edycje)
Nie podano opisu zmian
 
Bwalter (dyskusja | edycje)
Nie podano opisu zmian
 
Linia 1: Linia 1:
==Extract Interface==
==Long Parameter List==


[[Image:zpo-8-wyk-Slajd33.PNG|Extract Interface]]
[[Image:zpo-8-wyk-Slajd33.PNG|Long Parameter List]]




Wyłączenie interfejsu jest przekształceniem czysto syntaktycznym, które nie może wprowadzić zmian w zachowaniu programu. Jednak pozwala poprawić jakość projektu przez zastąpienie powiązań bezpośrednio z klasami powiązaniami przez interfejs.  
Długa lista parametrów czasem jest związana z innymi przykrymi zapachami, w szczególności z długimi metodami. Najogólniej, metoda obciążona tym problemem otrzymuje zbyt wiele informacji, której albo nie wykorzystuje, albo wykorzystuje do realizacji zadań odmiennych, niespójnych z ogólnym celem metody.


Przekształcenie to stosowane jest zwykle w sytuacji, gdy grupa metod pełni kluczową rolę w klasie, a ich zmiana musi być dokonana jednocześnie. Celem przekształcenia jest zadeklarowanie tych metod w nowym interfejsie, oraz zaimplementowanie tego interfejsu w klasie. W efekcie wszystkie klasy klienckie mogą odwoływać się do tej klasy poprzez interfejs, co pozwala zmienić jej implementację.
Sposobem przeciwdziałania jest przede wszystkim zmniejszenie liczby parametrów (usunięcie zbędnych, połączenie niektórych parametrów w nową klasę) lub podział metody na mniejsze jednostki.
 
Pierwszym krokiem jest utworzenie interfejsu i zadeklarowanie w nim wybranych metod (bez zmiany ich sygnatur). Następnie należy zadeklarować implementację tego interfejsu w klasie. Zmiana ta powoduje jedynie rozdzielenie typu i jego implementacji, a więc nie zmienia zachowania systemu. Ostatnim krokiem jest zmiana klientów, tak aby zależały od interfejsu, a nie bezpośrednio od klasy go implementującej.




[[zpo-8-wyk-Slajd32 | << Poprzedni slajd]] | [[zpo-8-wyk-toc|Spis treści ]] | [[zpo-8-wyk-Slajd34 | Następny slajd >>]]
[[zpo-8-wyk-Slajd32 | << Poprzedni slajd]] | [[zpo-8-wyk-toc|Spis treści ]] | [[zpo-8-wyk-Slajd34 | Następny slajd >>]]

Aktualna wersja na dzień 18:14, 4 lis 2006

Long Parameter List

Long Parameter List


Długa lista parametrów czasem jest związana z innymi przykrymi zapachami, w szczególności z długimi metodami. Najogólniej, metoda obciążona tym problemem otrzymuje zbyt wiele informacji, której albo nie wykorzystuje, albo wykorzystuje do realizacji zadań odmiennych, niespójnych z ogólnym celem metody.

Sposobem przeciwdziałania jest przede wszystkim zmniejszenie liczby parametrów (usunięcie zbędnych, połączenie niektórych parametrów w nową klasę) lub podział metody na mniejsze jednostki.


<< Poprzedni slajd | Spis treści | Następny slajd >>