Wzorce projektowe. Analiza kodu sposobem na ich poznanie - Helion
Tytuł oryginału: Holub on Patterns: Learning Design Patterns by Looking at Code
ISBN: 83-7361-948-8
stron: 464, Format: B5, okładka: miękka
Data wydania: 2005-08-30
Księgarnia: Helion
Cena książki: 49,90 zł
Opanuj zasady stosowania wzorców projektowych na praktycznych przykładach
- Dowiedz się, czym są wzorce projektowe
- Zaimplementuj wzorce we własnych programach
- Poznaj rodzaje wzorców projektowych
Wzorce projektowe to zapisane w sposób formalny sposoby rozwiązywania najczęstszych problemów, z jakimi borykają się twórcy oprogramowania stosujący języki obiektowe. Najczęściej stosowane wzorce zostały skatalogowane i przedstawione w postaci diagramów UML, jednak do poprawnego ich wykorzystywania niezbędna jest wiedza praktyczna. Przystępując do implementacji wzorca projektowego, należy poznać zakres jego zastosowania. Taką wiedzę najlepiej zdobywa się, analizując przykłady kodów źródłowych.
Dzięki książce "Wzorce projektowe. Analiza kodu sposobem na ich poznanie" poznasz wzorce w taki właśnie sposób -- badając programy, w których je zastosowano. Każdy z omawianych w książce wzorców zaprezentowany jest w oparciu o dwie implementacje szczegółowo wyjaśniające zasadę jego działania. Dzięki takim opisom wzorców opanujesz tę technologię znacznie szybciej niż w przypadku nauki teoretycznych podstaw oraz prób ich samodzielnego wdrażania we własnych aplikacjach. Unikniesz typowych błędów i dowiesz się, jak prawidłowo wykorzystywać każdy z wzorców.
- Zastosowanie wzorców projektowych
- Klasyfikacja wzorców
- Podstawowe pojęcia z dziedziny obiektowości
- Interfejsy i wzorce konstrukcyjne
- Implementacja wzorców obserwatora i fasady
- Wykorzystanie wzorców projektowych w aplikacjach bazodanowych
Książka zawiera również zestawienie najczęściej wykorzystywanych wzorców projektowych wraz z opisem ich zastosowań.
Osoby które kupowały "Wzorce projektowe. Analiza kodu sposobem na ich poznanie", wybierały także:
- JavaScript. Kurs video. Programowanie funkcyjne i reaktywne 99,00 zł, (29,70 zł -70%)
- Zostań programistą. Kurs video. Fundamentalne zasady i koncepcje programistyczne 79,00 zł, (23,70 zł -70%)
- F# 4.0 dla zaawansowanych. Wydanie IV 96,45 zł, (29,90 zł -69%)
- Systemy reaktywne. Wzorce projektowe i ich stosowanie 65,31 zł, (20,90 zł -68%)
- Scratch. Komiksowa przygoda z programowaniem 36,06 zł, (11,90 zł -67%)
Spis treści
Wzorce projektowe. Analiza kodu sposobem na ich poznanie -- spis treści
O Autorze (9)
Przedmowa (11)
Rozdział 1. Wstęp: programowanie obiektowe i wzorce projektowe (15)
- Wzorce kontra cechy języków programowania (16)
- Czym właściwie jest wzorzec projektowy? (17)
- Czemu te wzorce mają w ogóle służyć? (21)
- Rola wzorców w procesie projektowania (22)
- Napięcia pomiędzy wzorcami a prostotą (23)
- Klasyfikacja wzorców (25)
- O programowaniu, ogólnie (26)
- Programowanie języka FORTRAN w Javie (28)
- Programowanie z otwartymi oczami (31)
- Czym jest obiekt? (32)
- Nonsens! (32)
- Obiekt jest zbiorem zdolności (33)
- Jak nie należy tego robić? (35)
- Jak zatem należy to robić "prawidłowo"? (38)
- Automat komórkowy (42)
- Metody zwracające i ustawiające są złe (48)
- Sam wizualizuj swoje dane (52)
- JavaBeans i Struts (54)
- Dostrajanie (55)
- Życie bez metod get i set (56)
- Kiedy stosowanie akcesorów i mutatorów jest uzasadnione? (59)
- Podsumowanie problematyki metod zwracających i ustawiających (62)
Rozdział 2. Programowanie z interfejsami i kilka wzorców konstrukcyjnych (67)
- Dlaczego słowo kluczowe extends jest złe (67)
- Interfejsy kontra klasy (69)
- Utrata elastyczności (69)
- Sprzęganie (71)
- Problem ułomnej klasy bazowej (73)
- Dziedziczenie wielokrotne (80)
- Szkielety (81)
- Wzorce metody szablonowej i metody wytwórczej (82)
- Podsumowanie problemu ułomnych klas bazowych (88)
- Kiedy stosowanie słowa extends jest uzasadnione (90)
- Eliminowanie relacji extends (93)
- Wzorce wytwórni i singletonów (94)
- Singleton (96)
- Problem z przetwarzaniem wielowątkowym w przypadku singletonów (98)
- Blokowanie DCL (nigdy tego nie rób) (100)
- Zabijanie singletonu (101)
- Wytwórnia abstrakcji (103)
- Pomieszanie wzorców (107)
- Dynamiczne tworzenie obiektów w ramach wytwórni (109)
- Polecenie i strategia (112)
- Podsumowanie (116)
Rozdział 3. Gra w życie (119)
- Zdobywanie życia (120)
- Sporządzanie mapy struktury życia (122)
- Podsystem zegara: obserwator (125)
- Implementacja wzorca obserwatora: klasa Publisher (132)
- Podsystem zegara: wzorzec wizytatora (143)
- Podsystem menu: kompozyt (148)
- Podsystem menu: fasada i most (156)
- Klasa MenuSite (158)
- Klasy rdzenne (177)
- Klasa Universe (178)
- Interfejs Cell (182)
- Klasa Resident (185)
- Klasa Neighborhood (188)
- Mediator (197)
- Jeszcze jedno spojrzenie na wzorzec kompozytu (199)
- Prototyp (201)
- Jeszcze raz o wzorcu projektowym kompozytu (205)
- Waga piórkowa (210)
- Pula wagi piórkowej (215)
- Memento (217)
- Dokończenie (220)
- Podsumowanie (225)
Rozdział 4. Implementacja osadzonego interpretera języka SQL (227)
- Wymagania (228)
- Architektura (229)
- Warstwa składowania danych (231)
- Interfejs Table (231)
- Wzorzec mostu (237)
- Tworzenie tabeli: wzorzec projektowy wytwórni abstrakcji (240)
- Tworzenie i zapisywanie tabel: pasywne iteratory i wzorzec projektowy budowniczego (243)
- Wypełnianie tabeli danymi (255)
- Przeszukiwanie tabeli: wzorzec projektowy iteratora (258)
- Implementacja transakcji (funkcji cofania) przy użyciu wzorca projektowego polecenia (267)
- Modyfikowanie tabeli: wzorzec projektowy strategii (273)
- Selekcja i złączenia (276)
- Rozmaitości (282)
- Odmiany interfejsu Table: wzorzec dekoratora (290)
- Rozbudowa całego systemu o obsługę języka SQL (300)
- Struktura modułu języka SQL (301)
- Podział danych wejściowych, ponowne omówienie wzorca wagi piórkowej i analiza wzorca łańcucha odpowiedzialności (301)
- Skaner: wzorzec łańcucha odpowiedzialności (311)
- Klasa ParseFailure (319)
- Klasa Database (321)
- Stosowanie klasy Database (322)
- Wzorzec pośrednika (325)
- Zbiór tokenów i pozostałe stałe (330)
- Wzorzec interpretatora (337)
- Obsługiwana część języka SQL (337)
- Analiza funkcjonowania interpretera języka SQL (359)
- Warstwa JDBC (366)
- Wzorzec stanu i klasa JDBCConnection (373)
- Wyrażenia (379)
- Wzorzec adaptera (zbiory wynikowe) (380)
- Wykańczanie kodu (385)
- Kiedy mosty nie zdają egzaminu (386)
- Uff! (387)
Dodatek A Krótki podręcznik o wzorcach projektowych (389)
- Wzorce konstrukcyjne (391)
- Wytwórnia abstrakcji (392)
- Budowniczy (394)
- Metoda wytwórcza (396)
- Prototyp (398)
- Singleton (400)
- Wzorce strukturalne (403)
- Adapter (404)
- Most (406)
- Kompozyt (408)
- Dekorator (410)
- Fasada (412)
- Waga piórkowa (414)
- Pośrednik (416)
- Wzorce czynnościowe (419)
- Łańcuch odpowiedzialności (420)
- Polecenie (422)
- Interpretator (424)
- Iterator (426)
- Mediator (428)
- Memento (430)
- Obserwator (publikowanie-abonament) (432)
- Stan (434)
- Strategia (436)
- Metoda szablonowa (438)
- Wizytator (440)
Skorowidz (443)