• Nie Znaleziono Wyników

Refaktoryzacja kodu projektu Java SE oraz projektu UML Laboratorium 14

N/A
N/A
Protected

Academic year: 2021

Share "Refaktoryzacja kodu projektu Java SE oraz projektu UML Laboratorium 14"

Copied!
5
0
0

Pełen tekst

(1)

Refaktoryzacja kodu projektu Java SE oraz projektu UML

Laboratorium 14

Zofia Kruczkiewicz

Zofia Kruczkiewicz – lab_INP002017_13 1

(2)

Cel laboratorium:

Poprawa jakości oprogramowania przez eliminację powtarzającego się kodu za pomocą metod z typami generycznymi, sparametryzowaniu komunikatów

Tworzenie dokumentacji dla zespołu wytwarzającego oprogramowanie.

Wykorzystanie narzędzi

(3)

Przykład metod generycznych, wprowadzających wieloużywalność kodu

package help;

import java.util.List;

public class Metody {

static public <T> T search(T t, List<T> kol) { int idx;

if ((idx = kol.indexOf(t)) != -1) { return kol.get(idx); }

return null;

}

static public <T> String add(T t, List<T> kol) {

if (search(t,kol) == null) { kol.add(t);

return t.toString(); } return null;

} }

(4)

Przykład metod generycznych, wprowadzających wieloużywalność kodu w klasie Facade – poprawa kodu metod addClient i addTitleBook oraz wyeliminowanie metod searchClient i

searchTitleBook

public String addClient(String data[]) { Factory factory = new Factory();

Client client = factory.createClient(data);

/* if (search(client,clients) == null) { clients.add(client);

return client.toString();

}

return null;*/

return add(client,clients);

}

public String addTitleBook(String data[]) { Factory factory = new Factory();

TitleBook titleBook = factory.createTitleBook(data);

/* if (search(titleBook,titleBooks) == null) { titleBooks.add(titleBook);

return titleBook.toString();

}

return null;*/

(5)

Przykład metod generycznych, wprowadzających wieloużywalność kodu w klasie TitleBook wyeliminowanie metody searchBook

public ArrayList<String> addBook(String data[]) { Factory factory = new Factory();

Book newbook;

newbook = factory.createBook(data);

if (search(newbook,books) == null) { books.add(newbook);

newbook.setTitleBook(this);

return getBooksModel();

}

return null;

}

Cytaty

Powiązane dokumenty

Kod jest zdegenerowany, co oznacza, że jeden aminokwas może być kodowany przez kilka kodonów.. Zatem jeden aminokwas może być kodowany przez jeden, dwa, trzy, cztery, nawet 6

[r]

Przypa- dek, w którym przyporządkowanie jest konieczne, ale nie jest powszechne, przy standardowym rozumieniu konieczności i powszechności jawi się jako sprzeczny wewnętrznie

Dla metody złotego podziału określić liczbę wywołań funkcji niezbędną do osiągnięcia przedziału po- szukiwań równego odpowiednio 0.1, 0.01, 0.001 i 0.0001 długosći

 Czy kod programu jest dobrym odwzorowaniem kognitywnego modelu, czy może ewolucja kodu programów uformowała współczesną postać tego schematu

Oczywiście, jest pewien haczyk: możliwości nawet najmocniejszego Raspberry Pi są daleko poniżej laptopa ze średniej półki, więc zestaw zadań, jakie można wygodnie rozwiązywać

Wybór in Ŝ ynierii odwrotnej – tworzenie diagramów UML na podstawie kodu ź ródłowego programu... Zofia Kruczkiewicz, Podstawy in Ŝ

Razem z klasą generującą kod będziecie potrzebować przynajmniej trzy klasy: tablice symboli, klasę alokującą rejestry i klasę