Zpo-8-wyk-Slajd8: 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:
==Przykład(3)==
==Przykład: Extract Method==


[[Image:zpo-8-wyk-Slajd8.PNG|Przykład(3)]]
[[Image:zpo-8-wyk-Slajd8.PNG|Przykład: Extract Method]]




W efekcie tego przekształcenia odpowiedzialność za reprezentację stanu obiektu została wydzielona z klasy KartaCzytelnicza do nowej klasy. KartaCzytelnicza posiada obecnie referencję do obiektu klasy TypKarty, który przejął od niej tę odpowiedzialność
Ilustracją dla definicji niech będzie jedno z najpopularniejszych przekształceń: Extract Method (wyłączenie metody). Polega ono na podziale złożonej metody na mniejsze poprzez wydzielenie z niej fragmentu kodu i przeniesienie go do nowej metody. Zmienne, których definicje znajdują się poza zakresem tego fragmentu, są przekazywane do tej metody jako parametry.
 
W tym przypadku metoda ''scalarProduct'' ''()'' wykonuje dwie czynności: oblicza wartości zmiennych tablicowych x, y i product, a następnie wyświetla je na ekranie. Kod służący do wyświetlania wyników jest wyłączony do nowej metody ''printScalarProduct'' ''(),'' która następnie jest wywoływana z oryginalnej metody ''scalarProduct'' ''().'' W ten sposób program z funkcjonalnego punktu widzenia zachowuje się tak samo: wywołanie metody ''scalarProduct'' ''()'' powoduje wykonanie odpowiednich obliczeń oraz wyświetlenie ich wyników na ekranie.
 
Aby spróbować określić warunki poprawności tego przekształcenia, warto zastanowić się, (1) w jakich okolicznościach stworzenie nowej metody będzie niemożliwe, (2) kiedy nie można jej przekazać wymaganych parametrów, (3) kiedy niemożliwe będzie zwrócenie wartości z tej metody.
 
Proszę je sformułować.




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

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

Przykład: Extract Method

Przykład: Extract Method


Ilustracją dla definicji niech będzie jedno z najpopularniejszych przekształceń: Extract Method (wyłączenie metody). Polega ono na podziale złożonej metody na mniejsze poprzez wydzielenie z niej fragmentu kodu i przeniesienie go do nowej metody. Zmienne, których definicje znajdują się poza zakresem tego fragmentu, są przekazywane do tej metody jako parametry.

W tym przypadku metoda scalarProduct () wykonuje dwie czynności: oblicza wartości zmiennych tablicowych x, y i product, a następnie wyświetla je na ekranie. Kod służący do wyświetlania wyników jest wyłączony do nowej metody printScalarProduct (), która następnie jest wywoływana z oryginalnej metody scalarProduct (). W ten sposób program z funkcjonalnego punktu widzenia zachowuje się tak samo: wywołanie metody scalarProduct () powoduje wykonanie odpowiednich obliczeń oraz wyświetlenie ich wyników na ekranie.

Aby spróbować określić warunki poprawności tego przekształcenia, warto zastanowić się, (1) w jakich okolicznościach stworzenie nowej metody będzie niemożliwe, (2) kiedy nie można jej przekazać wymaganych parametrów, (3) kiedy niemożliwe będzie zwrócenie wartości z tej metody.

Proszę je sformułować.


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