Uniwersytet Zielonogórski
Wydział Informatyki, Elektrotechniki i Telekomunikacji Instytut Sterowania i Systemów Informatycznych Informatyka studia pierwszego stopnia z tyt. inżyniera
Laboratorium Podstaw Modelowania Programów
Laboratorium 7
Wstęp do wzorców projektowych — wzorce: Singleton i Dekorator 1 Zadania
1. Narysować diagram klas dla wzorca Singleton
2. Napisać program który będzie zapisywał do pliku tekstowego, w zależności od życzenia użytkownika, albo wprowadzony z klawiatury tekst albo losową liczbę. Każdy sposób wprowadzania danych musi być zawarty w oddzielnej klasie — w programie głównym należy utworzyć dwa obiekty i wywoływać ich metody w zależności od wyboru użytkownika.
3. W jaki sposób zaimplementować wzorzec Singleton tak, aby można go było wykorzystać w programach współbieżnych? Podać przykład takiej implementacji.
4. Narysować diagram klas dla wzorca Dekorator
5. Napisać program do obsługi sklepu. W zależności od decyzji sprzedawcy, klient po dokonaniu zakupu otrzymuje od zera do n dodatkowych produktów:
• Maskotka sklepu (wartość 0 PLN)
• Smycz do pendrive (wartość 1 PLN)
• Rabat w wysokości 10 PLN. Jeśli łączna cena zakupu wszystkich produktów po uwzględnieniu wszyst- kich rabatów jest ujemna, cena wynosi zero.
• Dodatkowy koszt transportu w wysokości 13 PLN (do ceny zakupu należy doliczyć tą kwotę) Program powinien wypisać wszystkie zakupione przedmioty wraz z dodatkami oraz podać łączną cenę wszystkich produktów.
2 Literatura
• Head First Design Patterns. Edycja polska, Freeman E. i in., Helion 2005
• Wzorce projektowe Elementy oprogramowania obiektowego wielokrotnego użytku, Gamma E., Helm E., Johnson R., Vlissades J., WNT 2008
1