12.07.2015 Views

Podsumowanie wzorców projektowych GoF

Podsumowanie wzorców projektowych GoF

Podsumowanie wzorców projektowych GoF

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

2. CompositePrzeznaczenie (cytat z ksiki <strong>GoF</strong>):Składa obiekty w struktury drzewiaste reprezentujce hierarchie typu cz-cało.Umoliwia klientom jednakowe traktowanie pojedynczych obiektów i złoe obiektów.Przeznaczenie (cytat z fluffycat):Łczy grupy obiketów o tej samej sygnaturze.Opis: Przykład ilustruje pakowanie torebek herbaty do pudełek. Moe ono mie miejsce wrestauracji, gdy herbata jest przepakowywana do pudełek firmowych, które np. s dostarczanewraz z zawartoci do klienta. Pudełka s rónych rozmiarów, zatem due pudełka mog wsobie zawiera zarówno torebki herbaty jak równie małe pudełka z torebkami herbaty. Małepudełka przydaj si do oddzielenia od siebie herbat jednego rodzaju w celunieprzekazywania zapachów pomiedzy nimi.Problem: JakRozwizanie: PrzezKlasa główna:_DP_S_<strong>GoF</strong>_Compositepackage pk.dydakt.to.dp.s.gof.composite;public class _DP_S_<strong>GoF</strong>_Composite {public static void main(String[] args) {System.out.println("Creating tinOfTeaBags");TeaBags tinOfTeaBags =new TinOfTeaBags("tin of tea bags");System.out.println("The tinOfTeaBags has " +tinOfTeaBags.countTeaBags() +" tea bags in it.");System.out.println(" ");System.out.println("Creating teaBag1");TeaBags teaBag1 = new OneTeaBag("tea bag 1");System.out.println("The teaBag1 has " +teaBag1.countTeaBags() +" tea bags in it.");System.out.println(" ");System.out.println("Creating teaBag2");TeaBags teaBag2 = new OneTeaBag("tea bag 2");System.out.println("The teaBag2 has " +teaBag2.countTeaBags() +" tea bags in it.");System.out.println(" ");System.out.println("Putting teaBag1 and teaBag2 in tinOfTeaBags");if (tinOfTeaBags.add(teaBag1)) {System.out.println("teaBag1 added successfully to tinOfTeaBags");} else {27

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

Saved successfully!

Ooh no, something went wrong!