Eric Freeman, ebooki` -2271 plików
[ Pobierz całość w formacie PDF ]
IDZ DO
PRZYK£ADOWY ROZDZIA£
Head First Design
Patterns. Edycja polska
SPIS TRECI
KATALOG KSI¥¯EK
Autorzy: Eric Freeman, Elisabeth Freeman
T³umaczenie: Pawe³ Koronkiewicz (wprowadzenie,
rozdz. 1–8), Grzegorz Kowalczyk (rozdz. 9–14)
ISBN: 83-7361-792-2
Tytu³ orygina³u:
Format: 200
×
230, stron: 656
KATALOG ONLINE
ZAMÓW DRUKOWANY KATALOG
TWÓJ KOSZYK
Poznaj w niekonwencjonalny sposób zasady stosowania wzorców projektowych
• Dowiedz siê, czym s¹ wzorce projektowe
• Poznaj typy wzorców projektowych
• Zastosuj wzorce projektowe w praktyce
• Naucz siê projektowaæ aplikacje w oparciu o wzorce projektowe
Otwórz swój umys³. Poznaj wszystko, co jest zwi¹zane z wzorcami projektowymi,
w sposób gwarantuj¹cy szybkie i skuteczne opanowanie zasad ich stosowania.
Zapomnij o listingach licz¹cych tysi¹ce linii, d³ugich i nu¿¹cych opisach teoretycznych
oraz rozbudowanych schematach zale¿noci. Czytaj¹c ksi¹¿kê „Head First Design
Patterns. Edycja polska”, poznasz wzorce projektowe w inny sposób. Wzorce projektowe
to gotowe opisy rozwi¹zañ najczêciej spotykanych zagadnieñ zwi¹zanych z tworzeniem
oprogramowania. Aby je prawid³owo stosowaæ, nale¿y poznaæ za³o¿enia, na podstawie
których zosta³y stworzone, oraz nauczyæ siê implementowaæ je we w³aciwy sposób.
Dziêki ksi¹¿ce „Head First Design Pattern. Edycja polska” wszystkie pojêcia zwi¹zane
ze wzorcami projektowymi przestan¹ byæ dla Ciebie wiedz¹ tajemn¹. Autorzy ksi¹¿ki,
wykorzystuj¹c najnowsze elementy teorii uczenia, przedstawi¹ Ci wszystkie zagadnienia
niezbêdne do rozpoczêcia projektowania i tworzenia aplikacji w oparciu o wzorce
projektowe. Poznasz najczêciej stosowane wzorce projektowe, metody ich
implementacji i zadania, do jakich s¹ przeznaczone. Jednak, co najwa¿niejsze,
nauczysz siê stosowaæ tê wiedzê w praktyce.
• Cele stosowania wzorców projektowych
• Za³o¿enia, na których opieraj¹ siê wzorce projektowe
• Najwa¿niejsze i najczêciej wykorzystywane wzorce projektowe
• Przechowywanie i prezentacja danych
• Mechanizm RMI
• Wzorzec MVC
• Implementacja wzorców projektowych w aplikacjach
Przekonaj siê, ¿e nowoczesne metody nauczania mog¹ zmieniæ równie¿ sposób
poznawania nowoczesnych technik programistycznych.
DODAJ DO KOSZYKA
CENNIK I INFORMACJE
ZAMÓW INFORMACJE
O NOWOCIACH
ZAMÓW CENNIK
CZYTELNIA
FRAGMENTY KSI¥¯EK ONLINE
Wydawnictwo Helion
ul. Chopina 6
44-100 Gliwice
tel. (32)230-98-63
e-mail: helion@helion.pl
Spis treści (skrócony)
Wprowadzenie
21
1. Witamy w krainie wzorców projektowych:
wprowadzenie
33
2. Jak sprawić by Twoje obiekty
były zawsze dobrze poinformowane:
Wzorzec Obserwator
67
3. Dekorowanie zachowania obiektów:
Wzorzec Dekorator
109
4. Pizzeria zorientowana obiektowo:
Wzorzec Fabryka
139
5. Obiekty jedyne w swoim rodzaju:
Wzorzec Singleton
197
6. Hermetyzacja wywołań:
Wzorzec Polecenie
217
7. Zdolność do adaptacji:
Wzorce Adapter oraz Fasada
259
8. Hermetyzacja algorytmów:
Wzorzec Metoda Szablownowa
297
9. Zarządzanie kolekcjami:
Wzorce Iterator i Kompozyt
335
10. Stan obiektu:
Wzorzec Stan
403
11. Kontrola dostępu do obiektu:
Wzorzec Proxy
447
12. Łączenie wzorców:
Wzorce złożone
517
13. Wzorce projektowe w praktyce:
Nowe życie z wzorcami
595
14. Dodatek: i
nne wzorce
629
Skorowidz
649
Spis treści (na serio)
Wprowadzenie
Twój mózg jest skoncentrowany na wzorcach projektowych.
W tym rozdziale
Ty
starasz się czegoś dowiedzieć, a Twój
mózg
robi Ci przysługę i nie przykłada się
do
zapamiętywania
zdobywanej wiedzy. Twój mózg myśli sobie: „Lepiej zostawię miejsce w pamięci
na bardziej istotne informacje, na przykład: jakich dzikich zwierząt należy unikać bądź czy jeżdżenie nago
na snowboardzie jest dobrym pomysłem”. A zatem, w jaki sposób możesz przekonać swój mózg, że Twoje
życie zależy od poznania wzorców projektowych?
Dla kogo przeznaczona jest ta książka?
22
Wiemy także, co sobie myśli Twój mózg
23
Metapoznanie
25
Zmuś swój mózg do posłuszeństwa
27
Zespół recenzentów technicznych
30
Podziękowania
31
6
Wprowadzenie do wzorców projektowych
1
Witamy w krainie wzorców projektowych
Ktoś rozwiązał już Twoje problemy.
W tym rozdziale dowiesz się, dlaczego (i w jaki
sposób) możesz wykorzystać wiedzę i doświadczenia zdobyte przez innych projektantów i programistów,
którzy podczas pracy nad różnymi projektami zmuszeni byli wstąpić na pełną zdradliwych pułapek ścieżkę
i — co najważniejsze — udało im się przeżyć taką wyprawę. Zanim dobrniemy do końca rozdziału, rzucimy
okiem na sposoby wykorzystywania wzorców projektowych i przedstawimy ich zalety, poznamy kilka
podstawowych zasad projektowania zorientowanego obiektowo, a także omówimy sposób działania
przykładowego wzorca. Najlepszą metodą zastosowania wzorca jest
załadowanie go bezpośrednio
do Twojego mózgu
, a następnie
zlokalizowanie
obszarów w obrębie projektowanych rozwiązań oraz
istniejących aplikacji, w których możesz je
zastosować
. Pracując z wzorcami projektowymi, zamiast
wielokrotnego wykorzystywania tych samych fragmentów kodu, wielokrotnie wykorzystujesz swoje
doświadczenia
.
Prosta aplikacji o nazwie SymulatorKaczki
34
Jacek rozmyśla o dziedziczeniu…
37
Pamiętaj,
opanowanie takich
zagadnień, jak
abstrakcyjność, dziedziczenie
i polimorfizm, nie zrobi jeszcze
z Ciebie dobrego projektanta
systemów zorientowanych
obiektowo. Prawdziwy guru zawsze
myśli o stworzeniu elastycznego
projektu, który będzie łatwy
do serwisowania i będzie
sobie w stanie poradzić ze
zmieniającymi się
warunkami.
A może by tak interfejs?
38
Jedyny pewny element w procesie tworzenia oprogramowania
40
Oddzielanie tego, co się zmienia, od tego, co pozostaje niezmienione
42
Projektowanie zachowania Kaczki
43
Testowanie kodu klasy Kaczka
50
Dynamiczne ustawianie zachowania
52
Wielki diagram „ukrytych” zachowań
54
Relacja MA może być lepsza niż JEST
55
Rozmawiając o wzorcach projektowania
56
Potęga wspólnego słownika wzorców
60
W jaki sposób mogę wykorzystywać wzorce projektowe?
61
Twoja skrzynka narzędziowa
64
Rozwiązania ćwiczeń
66
Observers
7
Wzorzec Obserwator
2
Jak sprawić, by Twoje obiekty były
zawsze dobrze poinformowane
Nie przegap okazji, kiedy dzieje się coś naprawdę ciekawego!
Przedstawimy Ci wzorzec, który potrafi poinformować inne obiekty o tym, że wydarzyło się coś, czym
powinny się zająć. Co ciekawe, obiekty mogą nawet samodzielnie decydować w czasie działania programu
o tym, czy chcą być informowane o takich wydarzeniach. Wzorzec Obserwator jest jednym z najczęściej
wykorzystywanych wzorców w pakiecie JDK (ang.
Java Development Kit
) a co najważniejsze, jest wręcz
niewiarygodnie użyteczny. W niniejszym rozdziale rzucimy również okiem na relacje typu jeden-do-wielu
oraz tzw. luźne związki (tak, to prawda, napisaliśmy „luźne związki”). Korzystając z wzorca Obserwator,
z pewnością odmienisz swoje życie.
Aplikacja sprawdzająca warunki pogodowe
69
Spotkanie z wzorcem Obserwator
74
Wydawca + Prenumerator = wzorzec Obserwator
75
Pięciominutowe przedstawienie — obserwowany kontra obserwujący
78
Definicja wzorca Obserwator
81
Siła luźnych zależności
83
Projektowanie stacji meteorologicznej
86
Implementacja stacji meteorologicznej
87
Java — zastosowanie wbudowanego wzorca Obserwator
94
Ciemna strona klasy java.util.Observable
101
Twoja skrzynka narzędziowa
104
Rozwiązania ćwiczeń
107
RELACJA JEDEN-DO-WIELU
Obiekt, którego stan
jest obserwowany
8
8
8
8
8
int
K
K
Automatyczna aktualizacja
(powiadamianie)
Obiekty obserwujące
(Observers)
8
Wzorzec Dekorator
3
Dekorowanie zachowania obiektów
W zasadzie niniejszy rozdział możemy równie dobrze zatytułować
„Otwieranie oczu programistom z nadmiernymi skłonnościami
do nadużywania dziedziczenia”.
W tym rozdziale spróbujemy krytycznie przyjrzeć się
zwyczajowym skłonnościom do nadużywania mechanizmu dziedziczenia oraz nauczymy Cię sposobów
dekorowania zachowania klas w czasie działania programu przy użyciu pewnej formy kompozycji
obiektów. Dlaczego? Po zapoznaniu się z technikami dekoracji zachowania klas będziesz mógł wyposażać
swoje (i nie tylko) obiekty w nowe możliwości bez konieczności dokonywania jakichkolwiek modyfikacji
w kodzie klas podstawowych.
Witamy w „Star Caf�”
110
Reguła otwarte-zamknięte
116
Spotkanie z wzorcem Decorator
118
Konstruowanie zamówienia przy użyciu Dekoratorów
119
Definicja wzorca Decorator
121
Dekorujemy nasze Napoje
122
Tworzymy kod aplikacji „Star Caf�”
125
Dekoratory w świecie rzeczywistym:
obsługa wejścia-wyjścia w języku Java
130
Tworzenie własnych dekoratorów obsługi wejścia-wyjścia
132
Zawsze sądziłem,
że prawdziwi mężczyźni tworzą
podklasy dla wszystkiego, co się tylko
do tego nadaje. Tak było — do czasu,
gdy dowiedziałem się o korzyściach,
jakie daje możliwość rozszerzania
możliwości aplikacji na poziomie
działania, a nie kompilacji. A teraz
— spójrzcie tylko na mnie!
Twoja skrzynka narzędziowa
135
Rozwiązania ćwiczeń
136
9
[ Pobierz całość w formacie PDF ]