Kreacyjne wzorce projektowe dostarczają programistą szeregu metod pozwalających na sprawne zarządzanie tworzeniem obiektów w systemie. W tutorialu omawiam kilka z nich, prezentując strukturę w postaci diagramów UML, implementację oraz obszary zastosowań.
Jeśli chcesz przypomnieć sobie jak czytać diagramy UML w odniesieniu do kodu Java przeczytaj najpierw wcześniejsze tutoriale:
Wcześniej o tym zapomniałem. Dzięki za wersje pdf:-)
Ciekawe podejście do tematu – przedstawiając wzorce prezentacją. Gratuluję pomysłu. Na prawdę ciekawy. Można również wystawić na slideshare.
Nie pasuje mi jednak słowo – kreacyjny. Nie mam dla tego zamiennika, ale ten wybitnie mi nie pasuje.
Dlaczego ChartType na slajdzie Simple Factory jest wykorzystane z if zamiast switch? Od Java 5 switch wspiera typu wyliczeniowe (jedno z pytań na SCJP5)
W jakich sytuacjach chartFactory mógłby/powinien być niestatyczny?
Użycie „metoda tworząca” też jakieś odmienne – chyba nie masz na myśli funkcji tworzącej – jakoś mi się skojarzyło 😉
Ogólnie bardzo dobry pomysł z tymi prezentacjami. Nie ukrywam, że czekam na następne.
Jacek
Notatnik Projektanta Java EE
@Jacek
Hej, dzięki za opinię.
>Nie pasuje mi jednak słowo – >kreacyjny
Nie upieram się przy nim:) Pożyczyłem je z polskiego wydania GoF
>Dlaczego ChartType na slajdzie >Simple Factory jest wykorzystane z >if zamiast switch?
Siła przyzwyczajenia. Wyrosłem w przekonaniu, że swich jest "nieobiektowe" i należy go unikać. Ale jak wspomniałem to tylko przyzwyczajenie.
>W jakich sytuacjach chartFactory >mógłby/powinien być niestatyczny?
Moim zdaniem w przypadku, gdy:
* metoda jest nie ogranicza się do prostego tworzenia obiektów lecz podejmuje decyzje w oparciu o bardziej złożony algorytm; w takim przypadku statyczność utrudnia testowanie
* przewidujesz podmianę implementacji
>Użycie "metoda tworząca"…
miałem na myśli znaczenie dosłowne "metoda, która tworzy/kreuje/fabrykuje" coś tam
Pozdrawiam,
mb
Faktycznie swietny pomysl, bardzo mi sie podoba. Znalazlem tylko maly blad, w slajdzie FactoryMethod – na diagramie BarChartReportPage tworzy PieChart a PieChartReportPage tworzy BarChart.
@swiety
Dzięki, już poprawiłem