12.07.2015 Views

Podsumowanie wzorców projektowych GoF

Podsumowanie wzorców projektowych GoF

Podsumowanie wzorców projektowych GoF

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

3. CommandPrzeznaczenie (cytat z ksiki <strong>GoF</strong>):Kapsułkuje dania w postaci obiektu, co umoliwia parametryzowanie klientów rónymidaniami, kolejkowanie da lub zapisywanie ich w dziennikach, a take ułatwiaimplementacj anulowanych operacji.Przeznaczenie (cytat z fluffycat):Obiekt kapsułkuje wszystko, co jest potrzebne do wykonania metody w innym obiekcie.Opis: Dodawanie, a nastepnie usuwanie (anulowanie dodania) gwiazdek zamiast spacjipomidzy wyrazami w tytule DVD. Przykładem moe by narzdzie do tworzenia opisówpłytek DVD, które pokazuje uytkownikowi ostatnio zastosowany efekt. Uytkownik moealbo zatwierdzi ten efekt i przej do ewentualnego nastpnego albo moe go odrzuci iewentualnie zastosowa inny efekt.Problem: JakRozwizanie: PrzezKlasa główna:_DP_B_<strong>GoF</strong>_Commandpackage pk.dydakt.to.dp.b.gof.command;public class _DP_B_<strong>GoF</strong>_Command {public static void main(String[] args) {DvdName jayAndBob =new DvdName("Jay and Silent Bob Strike Back");DvdName spongeBob =new DvdName("Sponge Bob Squarepants - " +"Nautical Nonsense and Sponge Buddies");System.out.println("as first instantiated");System.out.println(jayAndBob.toString());System.out.println(spongeBob.toString());CommandAbstract bobStarsOn =new DvdCommandNameStarsOn(jayAndBob);CommandAbstract bobStarsOff =new DvdCommandNameStarsOff(jayAndBob);CommandAbstract spongeStarsOn =new DvdCommandNameStarsOn(spongeBob);CommandAbstract spongeStarsOff =new DvdCommandNameStarsOff(spongeBob);bobStarsOn.execute();spongeStarsOn.execute();System.out.println(" ");System.out.println("stars on");System.out.println(jayAndBob.toString());System.out.println(spongeBob.toString());}spongeStarsOff.execute();System.out.println(" ");System.out.println("sponge stars off");System.out.println(jayAndBob.toString());System.out.println(spongeBob.toString());57

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!