Wzorce projektowe. Elementy oprogramowania obiektowego wielokrotnego użytku - ebook
Wzorce projektowe. Elementy oprogramowania obiektowego wielokrotnego użytku - ebook
Naucz się wykorzystywać wzorce projektowe i ułatw sobie pracę!
- Jak wykorzystać projekty, które już wcześniej okazały się dobre?
- Jak stworzyć elastyczny projekt obiektowy?
- Jak sprawnie rozwiązywać typowe problemy projektowe?
Projektowanie oprogramowania obiektowego nie jest łatwe, a przy założeniu, że powinno ono nadawać się do wielokrotnego użytku, staje się naprawdę skomplikowane. Aby stworzyć dobry projekt, najlepiej skorzystać ze sprawdzonych i efektywnych rozwiązań, które wcześniej były już stosowane. W tej książce znajdziesz właśnie najlepsze doświadczenia z obszaru programowania obiektowego, zapisane w formie wzorców projektowych gotowych do natychmiastowego użycia!
W książce „Wzorce projektowe. Elementy oprogramowania obiektowego wielokrotnego użytku” opisano, czym są wzorce projektowe, a także w jaki sposób pomagają one projektować oprogramowanie obiektowe. Podręcznik zawiera studia przypadków, pozwalające poznać metody stosowania wzorców w praktyce. Zamieszczono tu również katalog wzorców projektowych, podzielony na trzy kategorie: wzorce konstrukcyjne, strukturalne i operacyjne. Dzięki temu przewodnikowi nauczysz się skutecznie korzystać z wzorców projektowych, ulepszać dokumentację i usprawniać konserwację istniejących systemów. Krótko mówiąc, poznasz najlepsze sposoby sprawnego opracowywania niezawodnego projektu.
- Wzorce projektowe w architekturze MVC
- Katalog wzorców projektowych
- Projektowanie edytora dokumentów
- Wzorce konstrukcyjne, strukturalne i operacyjne
- Dziedziczenie klas i interfejsów
- Określanie implementacji obiektów
- Obsługa wielu standardów wyglądu i działania
- Zastosowanie mechanizmów powtórnego wykorzystania rozwiązania
Wykorzystaj zestaw konkretnych narzędzi do programowania obiektowego!
Spis treści
- Recenzje książki
- Przedmowa
- Wstęp
- Przewodnik dla Czytelników
- Rozdział 1. Wprowadzenie
- 1.1. Czym jest wzorzec projektowy?
- 1.2. Wzorce projektowe w architekturze MVC w języku Smalltalk
- 1.3. Opisywanie wzorców projektowych
- Nazwa i kategoria wzorca
- Przeznaczenie
- Inne nazwy
- Uzasadnienie
- Warunki stosowania
- Struktura
- Elementy
- Współdziałanie
- Konsekwencje
- Implementacja
- Przykładowy kod
- Znane zastosowania
- Powiązane wzorce
- 1.4. Katalog wzorców projektowych
- 1.5. Struktura katalogu
- 1.6. Jak wzorce pomagają rozwiązać problemy projektowe?
- Znajdowanie odpowiednich obiektów
- Określanie poziomu szczegółowości obiektu
- Określanie interfejsów obiektów
- Określanie implementacji obiektów
- Dziedziczenie klas i interfejsów
- Programowanie pod kątem interfejsu, a nie implementacji
- Zastosowanie mechanizmów powtórnego wykorzystania rozwiązania
- Dziedziczenie a składanie
- Delegowanie
- Dziedziczenie a typy sparametryzowane
- Związki między strukturami czasu wykonywania programu i strukturami czasu kompilacji
- Projektowanie pod kątem zmian
- Aplikacje
- Pakiety narzędziowe
- Platformy
- 1.7. Jak wybrać wzorzec projektowy?
- 1.8. Jak stosować wzorce projektowe?
- Rozdział 2. Studium przypadku projektowanie edytora dokumentów
- 2.1. Problemy projektowe
- 2.2. Struktura dokumentu
- Składanie rekurencyjne
- Klasy z rodziny Glyph
- Wzorzec Kompozyt
- 2.3. Formatowanie
- Kapsułkowanie algorytmu formatowania
- Klasy Compositor i Composition
- Wzorzec Strategia
- 2.4. Ozdabianie interfejsu użytkownika
- Niewidoczna otoczka
- Klasa MonoGlyph
- Wzorzec Dekorator
- 2.5. Obsługa wielu standardów wyglądu i działania
- Abstrakcyjne ujęcie procesu tworzenia obiektów
- Fabryki i klasy produktów
- Wzorzec Fabryka abstrakcyjna
- 2.6. Obsługa wielu systemów okienkowych
- Czy można zastosować Fabrykę abstrakcyjną?
- Kapsułkowanie zależności implementacyjnych
- Klasy Window i WindowImp
- Podklasy klasy WindowImp
- Konfigurowanie obiektów Window za pomocą obiektów WindowImp
- Wzorzec Most
- 2.7. Działania użytkowników
- Kapsułkowanie żądania
- Klasa Command i jej podklasy
- Możliwość cofania operacji
- Historia poleceń
- Wzorzec Polecenie
- 2.8. Sprawdzanie pisowni i podział słów
- Dostęp do rozproszonych informacji
- Kapsułkowanie dostępu do danych i przechodzenia po nich
- Klasa Iterator i jej podklasy
- Wzorzec Iterator
- Przechodzenie i działania wykonywane w jego trakcie
- Kapsułkowanie analiz
- Klasa Visitor i jej podklasy
- Wzorzec Odwiedzający
- 2.9. Podsumowanie
- Rozdział 3. Wzorce konstrukcyjne
- BUDOWNICZY (builder)
- Przeznaczenie
- Uzasadnienie
- Warunki stosowania
- Struktura
- Elementy
- Współdziałanie
- Konsekwencje
- Implementacja
- Przykładowy kod
- Znane zastosowania
- Powiązane wzorce
- FABRYKA ABSTRAKCYJNA (abstract factory)
- Przeznaczenie
- Inne nazwy
- Uzasadnienie
- Warunki stosowania
- Struktura
- Elementy
- Współdziałanie
- Konsekwencje
- Implementacja
- Przykładowy kod
- Znane zastosowania
- Powiązane wzorce
- METODA WYTWÓRCZA (Factory Method)
- Przeznaczenie
- Inne nazwy
- Uzasadnienie
- Warunki stosowania
- Struktura
- Elementy
- Współdziałanie
- Konsekwencje
- Implementacja
- Przykładowy kod
- Znane zastosowania
- Powiązane wzorce
- PROTOTYP (prototype)
- Przeznaczenie
- Uzasadnienie
- Warunki stosowania
- Struktura
- Elementy
- Współdziałanie
- Konsekwencje
- Implementacja
- Przykładowy kod
- Znane zastosowania
- Powiązane wzorce
- SINGLETON (singleton)
- Przeznaczenie
- Uzasadnienie
- Warunki stosowania
- Struktura
- Elementy
- Współdziałanie
- Konsekwencje
- Implementacja
- Przykładowy kod
- Znane zastosowania
- Powiązane wzorce
- Omówienie wzorców konstrukcyjnych
- BUDOWNICZY (builder)
- Rozdział 4. Wzorce strukturalne
- ADAPTER (adapter)
- Przeznaczenie
- Inne nazwy
- Uzasadnienie
- Warunki stosowania
- Struktura
- Elementy
- Współdziałanie
- Konsekwencje
- Implementacja
- Przykładowy kod
- Znane zastosowania
- Powiązane wzorce
- DEKORATOR (decorator)
- Przeznaczenie
- Inne nazwy
- Uzasadnienie
- Warunki stosowania
- Struktura
- Elementy
- Współdziałanie
- Konsekwencje
- Implementacja
- Przykładowy kod
- Znane zastosowania
- Powiązane wzorce
- FASADA (facade)
- Przeznaczenie
- Uzasadnienie
- Warunki stosowania
- Struktura
- Elementy
- Współdziałanie
- Konsekwencje
- Implementacja
- Przykładowy kod
- Znane zastosowania
- Powiązane wzorce
- KOMPOZYT (composite)
- Przeznaczenie
- Uzasadnienie
- Warunki stosowania
- Struktura
- Elementy
- Współdziałanie
- Konsekwencje
- Implementacja
- Przykładowy kod
- Znane zastosowania
- Powiązane wzorce
- MOST (bridge)
- Przeznaczenie
- Inne nazwy
- Uzasadnienie
- Warunki stosowania
- Struktura
- Elementy
- Współdziałanie
- Konsekwencje
- Implementacja
- Przykładowy kod
- Znane zastosowania
- Powiązane wzorce
- PEŁNOMOCNIK (proxy)
- Przeznaczenie
- Inne nazwy
- Uzasadnienie
- Warunki stosowania
- Struktura
- Elementy
- Współdziałanie
- Konsekwencje
- Implementacja
- Przykładowy kod
- Znane zastosowania
- Powiązane wzorce
- PYŁEK (flyweight)
- Przeznaczenie
- Uzasadnienie
- Warunki stosowania
- Struktura
- Elementy
- Współdziałanie
- Konsekwencje
- Implementacja
- Przykładowy kod
- Znane zastosowania
- Powiązane wzorce
- Omówienie wzorców strukturalnych
- Adapter i Most
- Kompozyt, Dekorator i Pełnomocnik
- ADAPTER (adapter)
- Rozdział 5. Wzorce operacyjne
- INTERPRETER (interpreter)
- Przeznaczenie
- Uzasadnienie
- Warunki stosowania
- Struktura
- Elementy
- Współdziałanie
- Konsekwencje
- Implementacja
- Przykładowy kod
- Znane zastosowania
- Powiązane wzorce
- ITERATOR (iterator)
- Przeznaczenie
- Inne nazwy
- Uzasadnienie
- Warunki stosowania
- Struktura
- Elementy
- Współdziałanie
- Konsekwencje
- Implementacja
- Przykładowy kod
- Znane zastosowania
- Powiązane wzorce
- ŁAŃCUCH ZOBOWIĄZAŃ (chain of responsibility)
- Przeznaczenie
- Uzasadnienie
- Warunki stosowania
- Struktura
- Elementy
- Współdziałanie
- Konsekwencje
- Implementacja
- Przykładowy kod
- Znane zastosowania
- Powiązane wzorce
- MEDIATOR (mediator)
- Przeznaczenie
- Uzasadnienie
- Warunki stosowania
- Struktura
- Elementy
- Współdziałanie
- Konsekwencje
- Implementacja
- Przykładowy kod
- Znane zastosowania
- Powiązane wzorce
- METODA SZABLONOWA (template method)
- Przeznaczenie
- Uzasadnienie
- Warunki stosowania
- Struktura
- Elementy
- Współdziałanie
- Konsekwencje
- Implementacja
- Przykładowy kod
- Znane zastosowania
- Powiązane wzorce
- OBSERWATOR (observer)
- Przeznaczenie
- Inne nazwy
- Uzasadnienie
- Warunki stosowania
- Struktura
- Elementy
- Współdziałanie
- Konsekwencje
- Implementacja
- Przykładowy kod
- Znane zastosowania
- Powiązane wzorce
- ODWIEDZAJĄCY (visitor)
- Przeznaczenie
- Uzasadnienie
- Warunki stosowania
- Struktura
- Elementy
- Współdziałanie
- Konsekwencje
- Implementacja
- Przykładowy kod
- Znane zastosowania
- Powiązane wzorce
- PAMIĄTKA (memento)
- Przeznaczenie
- Inna nazwa
- Uzasadnienie
- Warunki stosowania
- Struktura
- Elementy
- Współdziałanie
- Konsekwencje
- Implementacja
- Przykładowy kod
- Znane zastosowania
- Powiązane wzorce
- POLECENIE (command)
- Przeznaczenie
- Inne nazwy
- Uzasadnienie
- Warunki stosowania
- Struktura
- Elementy
- Współdziałanie
- Konsekwencje
- Implementacja
- Przykładowy kod
- Znane zastosowania
- Powiązane wzorce
- STAN (state)
- Przeznaczenie
- Inna nazwa
- Uzasadnienie
- Warunki stosowania
- Struktura
- Elementy
- Współdziałanie
- Konsekwencje
- Implementacja
- Przykładowy kod
- Znane zastosowania
- Powiązane wzorce
- STRATEGIA (strategy)
- Przeznaczenie
- Inna nazwa
- Uzasadnienie
- Warunki stosowania
- Struktura
- Elementy
- Współdziałanie
- Konsekwencje
- Implementacja
- Przykładowy kod
- Znane zastosowania
- Powiązane wzorce
- Omówienie wzorców operacyjnych
- Kapsułkowanie zmian
- Obiekty jako argumenty
- Czy komunikacja powinna być zakapsułkowana czy rozproszona?
- Oddzielanie nadawców od odbiorców
- Podsumowanie
- INTERPRETER (interpreter)
- Rozdział 6. Podsumowanie
- 6.1. Czego można oczekiwać od wzorców projektowych?
- Standardowe słownictwo projektowe
- Pomoc w dokumentowaniu i uczeniu się
- Uzupełnienie istniejących metod
- Docelowe elementy refaktoryzacji
- 6.2. Krótka historia
- 6.3. Społeczność związana ze wzorcami
- Języki wzorców Alexandra
- Wzorce w oprogramowaniu
- 6.4. Zaproszenie
- 6.5. Słowo na zakończenie
- 6.1. Czego można oczekiwać od wzorców projektowych?
- Dodatek A Słowniczek
- Dodatek B Przewodnik po notacji
- B.1. Diagram klas
- B.2. Diagram obiektów
- B.3. Diagram interakcji
- Dodatek C Klasy podstawowe
- C.1. List
- Konstruowanie, usuwanie, inicjowanie i przypisywanie
- Dostęp do elementów
- Dodawanie elementów
- Usuwanie elementów
- Interfejs stosu
- C.2. Iterator
- C.3. ListIterator
- C.4. Point
- C.5. Rect
- C.1. List
- Bibliografia
Kategoria: | Programowanie |
Zabezpieczenie: |
Watermark
|
ISBN: | 978-83-283-8610-5 |
Rozmiar pliku: | 7,7 MB |