Zpo-5-wyk-Slajd14: 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:
==Porównanie cykli produkcyjnych==
==Singleton: konsekwencje==


[[Image:zpo-5-wyk-Slajd14.PNG|Porównanie cykli produkcyjnych]]
[[Image:zpo-5-wyk-Slajd14.PNG|Singleton: konsekwencje]]




Grupa AdHoc (AH) pracowała w uproszczonym modelu spiralnym, zaczynając od analizy zadania, następnie tworząc kod programu i uruchamiając testy akceptacyjne. Niepowodzenie któregokolwiek z testów powodowało powrót do programowania.
Singleton jest przede wszystkim obiektowym sposobem na zapewnienie, że zostanie utworzona dokładnie jedna instancja klasy, która będzie dostępna dla wszystkich obiektów aplikacji. Warto zauważyć, że ten wzorzec pozwala także przenieść odpowiedzialność za tworzenie obiektu z klienta na dedykowaną metodę. Koncepcja ta zostanie dalej rozwinięta we wzorcach Factory Method i Abstract Factory.  


W porównaniu z tym cyklem model TR dodatkowo był rozszerzony o dwie fazy: refaktoryzację i testowanie jednostkowe. Refaktoryzacja następowała po fazie analizy i miała na celu właściwe wkomponowanie nowych funkcji do istniejącej struktury programu, przede wszystkim poprzez restrukturyzację. Testy jednostkowe, tworzone podczas programowania i po jego zakończeniu, służyły efektywnej refaktoryzacji oraz pozwalały programiście na bieżąco kontrolować jakość kodu.
Singleton jest zwykle obiektem bezstanowym, tzn. sposób działania metody statycznej nie zależy od stanu, w jakim znajduje się program: klient otrzymuje instancję klasy na żądanie, niezależnie od tego, czy została ona utworzona wcześniej, czy nie. Singleton pozwala także stosować dziedziczenie w celu zmiany przez siebie tworzonej klasy i zwracać także instancje podklas. Dołączenie podklasy do wzorca nie wymaga modyfikacji po stronie klienta.


Tak więc model AH składał się z trzech faz, natomiast model TH – z pięciu.
Singleton w pewnym sensie może także być uważany za szczególny przypadek obiektu Pool of Objects; może także być stosunkowo łatwo rozszerzony do takiej postaci.




[[zpo-5-wyk-Slajd13 | << Poprzedni slajd]] | [[zpo-5-wyk-toc|Spis treści ]] | [[zpo-5-wyk-Slajd15 | Następny slajd >>]]
[[zpo-5-wyk-Slajd13 | << Poprzedni slajd]] | [[zpo-5-wyk-toc|Spis treści ]] | [[zpo-5-wyk-Slajd15 | Następny slajd >>]]

Aktualna wersja na dzień 11:03, 17 paź 2006

Singleton: konsekwencje

Singleton: konsekwencje


Singleton jest przede wszystkim obiektowym sposobem na zapewnienie, że zostanie utworzona dokładnie jedna instancja klasy, która będzie dostępna dla wszystkich obiektów aplikacji. Warto zauważyć, że ten wzorzec pozwala także przenieść odpowiedzialność za tworzenie obiektu z klienta na dedykowaną metodę. Koncepcja ta zostanie dalej rozwinięta we wzorcach Factory Method i Abstract Factory.

Singleton jest zwykle obiektem bezstanowym, tzn. sposób działania metody statycznej nie zależy od stanu, w jakim znajduje się program: klient otrzymuje instancję klasy na żądanie, niezależnie od tego, czy została ona utworzona wcześniej, czy nie. Singleton pozwala także stosować dziedziczenie w celu zmiany przez siebie tworzonej klasy i zwracać także instancje podklas. Dołączenie podklasy do wzorca nie wymaga modyfikacji po stronie klienta.

Singleton w pewnym sensie może także być uważany za szczególny przypadek obiektu Pool of Objects; może także być stosunkowo łatwo rozszerzony do takiej postaci.


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