Io-13-lab-wiki

Z Studia Informatyczne
Wersja z dnia 21:07, 30 sie 2006 autorstwa Bwalter (dyskusja | edycje)
(różn.) ← poprzednia wersja | przejdź do aktualnej wersji (różn.) | następna wersja → (różn.)
Przejdź do nawigacjiPrzejdź do wyszukiwania

Ćwiczenie 13. Refaktoryzacja oprogramowania w Javie za pomocą Eclipse IDE

Informacje wstępne

Ćwiczenie jest realizowane w języku Java w środowisku Eclipse 3.2. Przed przystąpieniem do realizacji ćwiczenia należy zapozanać się z nt. refaktoryzacji w Eclipse IDE Celem ćwiczenia jest wykonanie przekształceń refaktoryzacyjnych wybranych fragmentów kodu w załączonym projekcie

Zadanie

Na podstawie załączonego kodu programu przeprowadź następujące zmiany w programie

Wyłączenie metody

Zaznacz fragment metody oraz wywołaj z menu kontekstowego opcję Refactor->Extract Method.

W jakiej sytuacji takie przekształcenie jest niewykonalne?

Rozwijnie wyrażenia

Wskaż zmienną lokalną, a następnie wywołaj z menu kontekstowego opcję Refactor->Inline Operację wykonaj dla potrzeb wyrażenia i + 2 oraz st.nextToken(). Na czym polega różnica w ich wykonaniu? Kiedy przekształcenie to jest niepoprawne?

Przenoszenie metody

Przenieś metodę statyczną do innej klasy.

W jaki sposób jest obecnie wykonywane wywołanie tej metody w dotychczasowej klasie?

Przenieś metodę obiektu do innej klasy.

W jaki sposób jest obecnie wykonywane wywołanie tej metody w dotychczasowej klasie?

Zmiana sygnatury metody

Do wybranej metody dodaj nowy parametr. W jaki sposób zmieniły się wywołania tej metody? Czy mogło to zmienić jej zachowanie?

Z innej metody usuń parametr. W jaki sposób zmieniły się wywołania tej metody? Czy mogło to zmienić jej zachowanie?

Przenoszenie składowych w obrębie hierarchii dziedziczenia

Przenieś metodę z podklasy do nadklasy. W jakich okolicznościach wykonanie takiej operacji jest niemożliwe?

Przenieś metodę z nadklasy do podklasy. W jakich okolicznościach wykonanie takiej operacji jest niemożliwe?

Literatura

  1. D. Gallardo "Refactoring for everyone" IBM DeveloperWorks