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 9
Wzorce Fasada i Strategia 1 Zadania
1. Jakie są wady i zalety wzorca Fasada?
2. Zaimplementować klasy służące do
• wprowadzania wartości n elementowej tablicy z klawiatury — klasa Klawiatura powinna zawierać funkcję Pobierz() zwracającą tablicę. Wartość n powinna być argumentem konstruktora.
• Sortowania tablicy
• wypisywania wartości tablicy na ekranie
Napisać przykładowy program wykorzystujący powyższe klasy
3. Zmodyfikować program tak, aby odczyt tablicy odbywał się z pliku — klasa Plik powinna zawierać funkcję Odczytaj(nazwaPliku) zwracającą tablicę odczytaną z pliku. Czy jest możliwość sensownego rozwiązania tego zadania bez wykorzystywania wzorca Fasada? Jakie są wady i zalety obu metod?
4. Czym różni się wzorzec Strategia od zwykłej implementacji interfejsu? Jakie są wady i zalety tego wzorca?
5. Zmodyfikować program z podpunktu ?? tak, aby możliwa była zmiana sposobu odczytu danych podczas działania programu. Czy da się wykonać zadanie bez modyfikacji klas Klawiatura i Plik?
6. Czy nazwy klas Klawiatura i Plik są poprawne?
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