Zpo-11-lab
Ćwiczenie 11. Wzorce projektowe cz. III
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 wykładem. Ćwiczenie jest ostatnią częścią związaną z wzorcami projektowymi. Celem jest zastosowanie kolejnych wzorców w przykładowym systemie obiektowym dotyczącym banku.
Instalacja
Przygotowanie do ćwiczenia polega na zainstalowaniu JDK 5.0 [1] oraz środowiska Eclipse [2] w wersji 3.2 Po uruchomieniu środowiska należy zaimportować (menu File->Import->Existing projects into workspace) projekt, w którym będą stosowane wzorce projektowe.
Zadanie
Zaimplementuj w systemie bankowym mechanizm wykonywania raportów, stanowiący realizację wzorca Visitor. Każdy raport jest obiektem Visitor, który odwiedza kolejne typy rachunków i produktów bankowych (obiektów Element), wykonując na nich operacje specyficzne dla danej klasy elementów.
Stwórz metodę w klasie bank, odpowiedzialną za uruchomienie wykonania raportu, która przyjmuje obiekt Raport jako parametr.
Napisz następujące raporty:
- obliczający sumę sald na wszystkich rachunkach, których posiadają bieżący typ oprocentowania A
- wykonujący zestawienie wszystkich rachunków o wartości salda powyżej 1000 PLN
Pytania do dyskusji
- Wzorce Proxy, Adapter i Decorator mimo podobnej struktury różnią się od siebie w bardzo istotny sposób. Dokonaj ich porównania.
- Czy obiekty poleceń występujące we wzorcu Command mogą podlegać zarządzaniu przez pulę (wzorzec Pool of Objects)? Odpowiedź uzasadnij.
Literatura
- E. Gamma, R. Helm, R. Johnson, J. Vlissides "Design Patterns: Elements of Reusable Object-Oriented Software". Addison-Wesley, 1995.
- D. Gallardo "Java Design Patterns 101". [IBM]
- J. Cooper "Java. Wzorce projektowe". Helion, 2001
- A. Shalloway, J. R. Trott "Programowanie zorientowane obiektowo. Wzorce projektowe". Wydanie II, Helion, 2005.