Facebook - konwersja
Pobierz fragment

Wzorce projektowe. Rusz głową! Tworzenie rozszerzalnego i łatwego w utrzymaniu oprogramowania obiektowego - ebook

Wydawnictwo:
Data wydania:
29 grudnia 2021
Format ebooka:
PDF
Format PDF
czytaj
na laptopie
czytaj
na tablecie
Format e-booków, który możesz odczytywać na tablecie oraz laptopie. Pliki PDF są odczytywane również przez czytniki i smartfony, jednakze względu na komfort czytania i brak możliwości skalowania czcionki, czytanie plików PDF na tych urządzeniach może być męczące dla oczu. Więcej informacji znajdziesz w dziale Pomoc.
czytaj
na laptopie
Pliki PDF zabezpieczone watermarkiem możesz odczytać na dowolnym laptopie po zainstalowaniu czytnika dokumentów PDF. Najpowszechniejszym programem, który umożliwi odczytanie pliku PDF na laptopie, jest Adobe Reader. W zależności od potrzeb, możesz zainstalować również inny program - e-booki PDF pod względem sposobu odczytywania nie różnią niczym od powszechnie stosowanych dokumentów PDF, które odczytujemy każdego dnia.
Informacje na temat zabezpieczenia e-booka znajdziesz na karcie produktu w "Szczegółach na temat e-booka". Więcej informacji znajdziesz w dziale Pomoc.
czytaj
na tablecie
Aby odczytywać e-booki na swoim tablecie musisz zainstalować specjalną aplikację. W zależności od formatu e-booka oraz systemu operacyjnego, który jest zainstalowany na Twoim urządzeniu może to być np. Bluefire dla EPUBa lub aplikacja Kindle dla formatu MOBI.
Informacje na temat zabezpieczenia e-booka znajdziesz na karcie produktu w "Szczegółach na temat e-booka". Więcej informacji znajdziesz w dziale Pomoc.
Pobierz fragment
Produkt niedostępny.  Może zainteresuje Cię

Wzorce projektowe. Rusz głową! Tworzenie rozszerzalnego i łatwego w utrzymaniu oprogramowania obiektowego - ebook

Nie warto wyważać otwartych drzwi ani ponownie wynajdywać koła. Sprytniej jest skorzystać ze sprawdzonych rozwiązań, które ktoś już opracował i wdrożył. Dlatego właśnie mądrzy programiści lubią wzorce projektowe: to jest ich sekretny sposób, aby nie tracić sił na nudne drobiazgi, tylko zająć się trudniejszymi, ważniejszymi i ciekawszymi zadaniami. Nic dziwnego, że powstało naprawdę bardzo dużo wzorców projektowych. Przegląd ich wszystkich byłby niemożliwy. Które z nich więc są najpotrzebniejsze w programowaniu obiektowym i kiedy dokładnie z nich skorzystać?

Odpowiedź na to fundamentalne pytanie znajdziesz w tej książce ? drugim wydaniu świetnego podręcznika dla przyszłych mistrzów kodu. Zostało ono, podobnie jak inne pozycje z serii Rusz głową!, przygotowane zgodnie z najnowszymi odkryciami nauk poznawczych, teorii uczenia się i neurofizjologii. I właśnie dzięki temu zaangażujesz swój mózg, wykorzystasz wiele zmysłów i niepostrzeżenie poznasz najprzydatniejsze i najciekawsze wzorce projektowe stosowane w programowaniu zorientowanym obiektowo. Tak złożone tematy, jak klasy, interfejsy, kolekcje czy łączenie wzorców, staną się jasne i zrozumiałe. Tego wszystkiego będziesz się uczyć, rozwiązując łamigłówki, wykonując praktyczne ćwiczenia, pisząc aplikacje - i wybuchając głośnym śmiechem!

W książce między innymi:

  • solidne podstawy korzystania z wzorców projektowych
  • dlaczego wzorce projektowe są idealne do programowania zorientowanego obiektowo
  • hermetyzacja, adaptacja, zarządzanie kolekcjami, kontrola dostępu i wiele innych wzorców
  • praktyczne wdrażanie wzorców projektowych
  • mnóstwo radości z tworzenia pięknego kodu obiektowego

Witaj w Obiektowie - i ciesz się każdą nową klasą!

Spis treści

Wprowadzenie

  • Dla kogo przeznaczona jest ta książka? (xxvi)
  • Wiemy, co sobie myślisz (xxvii)
  • Wiemy także, co sobie myśli Twój mózg (xxvii)
  • Wyobrażamy sobie, że Czytelnik tej książki jest uczniem (xxviii)
  • Metapoznanie: myślenie o myśleniu (xxix)
  • Oto co zrobiliśmy (xxx)
  • Oto co możesz zrobić, aby zmusić swój mózg do posłuszeństwa (xxxi)
  • Kilka ostatnich spraw, o których musisz wiedzieć (xxxii)
  • Zespół recenzentów technicznych (xxxiv)
  • Podziękowania (xxxv)

ROZDZIAŁ 1. Wprowadzenie do wzorców projektowych. Witamy w krainie wzorców projektowych

  • Wszystko rozpoczęło się od prostej aplikacji o nazwie KaczySim (2)
  • Ale teraz nasze kaczki muszą LATAĆ (3)
  • Ale coś poszło strasznie nie tak... (4)
  • Józek rozmyśla o dziedziczeniu... (5)
  • A może by tak interfejs? (6)
  • Co byś zrobił na miejscu Józka? (7)
  • Jedyny pewny element procesu wytwarzania oprogramowania (8)
  • Zerowanie problemu... (9)
  • Oddzielanie tego, co się zmienia, od tego, co pozostaje niezmienione (10)
  • Projektowanie zachowań Kaczki (11)
  • Implementacja zachowań klasy Kaczka (13)
  • Integracja zachowań klasy Kaczka (15)
  • Testowanie kodu klasy Kaczka (18)
  • Dynamiczne ustawianie zachowania (20)
  • Kompletny diagram hermetyzowanych zachowań (22)
  • Relacja MA może być lepsza od JEST (23)
  • Rozmawiając o wzorcach projektowych... (24)
  • Zasłyszane w lokalnym barze szybkiej obsługi... (26)
  • Zasłyszane w sąsiednim boksie (27)
  • Potęga wspólnego słownika wzorców (28)
  • W jaki sposób mogę używać wzorców projektowych? (29)
  • Narzędzia do Twojej projektowej skrzynki narzędziowej (32)

ROZDZIAŁ 2. Wzorzec Obserwator. Jak sprawić, by Twoje obiekty były zawsze dobrze poinformowane

  • Ogólne spojrzenie na aplikację monitorującą warunki pogodowe (37)
  • Spotkanie ze wzorcem Obserwator (42)
  • Wydawca + prenumeratorzy = wzorzec Obserwator (43)
  • Definicja wzorca Obserwator (49)
  • Siła luźnych powiązań (52)
  • Projektowanie stacji meteorologicznej (55)
  • Implementacja stacji meteorologicznej (56)
  • Włączamy zasilanie stacji meteorologicznej (59)
  • Podglądanie wzorca Obserwator w naturze (63)
  • Pisanie kodu aplikacji, która odmieni nasze życie (64)
  • Wróćmy do prac nad aplikacją meteorologiczną (67)
  • Jazda próbna nowego kodu (69)
  • Twoja projektowa skrzynka narzędziowa (70)
  • Reguły projektowe - wyzwanie (71)

ROZDZIAŁ 3. Wzorzec Dekorator. Dekorowanie obiektów

  • Witamy w "Star Café" (76)
  • Reguła otwarte-zamknięte (82)
  • Spotkanie z wzorcem Dekorator (84)
  • Konstruowanie zamówień przy użyciu dekoratorów (85)
  • Definicja wzorca Dekorator (87)
  • Dekorujemy nasze napoje (88)
  • Tworzymy kod aplikacji "Star Café" (91)
  • Tworzenie klas napojów (92)
  • Tworzenie kodu klas dodatków (93)
  • Podajemy kawy (94)
  • Dekoratory w świecie rzeczywistym: obsługa wejścia-wyjścia w języku Java (96)
  • Dekorowanie klas pakietu java.io (97)
  • Tworzenie własnych dekoratorów obsługi wejścia-wyjścia (98)
  • Testowanie nowego dekoratora strumieni wejścia-wyjścia (99)
  • Twoja projektowa skrzynka narzędziowa (101)

ROZDZIAŁ 4. Wzorzec Fabryka. Wypieki obiektowe

  • Identyfikacja zmiennych elementów aplikacji (108)
  • Hermetyzacja procesu tworzenia obiektów (110)
  • Budujemy prostą fabrykę pizzy (111)
  • Tworzymy definicję "wzorca" Prosta Fabryka (113)
  • Nowa struktura klasy Pizzeria (116)
  • Zezwalamy klasom podrzędnym na podejmowanie decyzji (117)
  • Deklarowanie metody typu Fabryka (121)
  • Wreszcie nadszedł czas na spotkanie ze wzorcem Metoda Wytwórcza (127)
  • Spojrzenie na równoległe hierarchie klas twórców i produktów (128)
  • Definicja wzorca Metoda Wytwórcza (130)
  • Sprawdzamy zależności między obiektami (134)
  • Reguła odwracania zależności (135)
  • Stosowanie reguły DIP (136)
  • Rodziny składników... (141)
  • Budujemy fabryki składników pizzy (142)
  • Aktualizacja kodu klas Pizza (145)
  • Odwiedzamy lokalne oddziały naszej sieci pizzerii (148)
  • Czego udało się nam dokonać? (149)
  • Definicja wzorca Fabryka Abstrakcyjna (152)
  • Porównanie Metody Wytwórczej oraz Fabryki Abstrakcyjnej (156)
  • Twoja projektowa skrzynka narzędziowa (158)

ROZDZIAŁ 5. Wzorzec Singleton. Obiekty jedyne w swoim rodzaju

  • Analiza klasycznej implementacji wzorca Singleton (167)
  • Fabryka czekolady (169)
  • Definicja wzorca Singleton (171)
  • Ups, mamy problem... (172)
  • Jak sobie radzić z wielowątkowością? (174)
  • Czy możemy ulepszyć działanie wielowątkowości? (175)
  • A w międzyczasie w fabryce czekolady... (177)
  • Twoja projektowa skrzynka narzędziowa (180)

ROZDZIAŁ 6. Wzorzec Polecenie. Hermetyzacja wywołań

  • Automatyka w domu i zagrodzie (186)
  • Przegląd dostarczonych klas (188)
  • Krótkie wprowadzenie do wzorca Polecenie (191)
  • Od baru do wzorca Polecenie (195)
  • Nasze pierwsze polecenie (197)
  • Zastosowanie polecenia (198)
  • Przypisywanie poleceń do gniazd (203)
  • Implementujemy SuperPilota (204)
  • Implementacja poleceń (205)
  • Sprawdzamy możliwości naszego SuperPilota (206)
  • Nadszedł wreszcie czas, aby przygotować trochę dokumentacji... (209)
  • Co robimy? (211)
  • Sprawdzamy poprawność działania przycisku Wycofaj (214)
  • Implementacja mechanizmu wycofywania przy użyciu stanów (215)
  • Dodajemy mechanizm wycofywania do poleceń sterujących wentylatorem (216)
  • Każdy pilot powinien mieć tryb Impreza! (219)
  • Stosowanie makropoleceń (220)
  • Kolejne zastosowania wzorca Polecenie - kolejkowanie żądań (223)
  • Kolejne zastosowania wzorca Polecenie - żądania rejestracji (224)
  • Wzorzec Polecenie w rzeczywistych zastosowaniach (225)
  • Twoja projektowa skrzynka narzędziowa (227)

ROZDZIAŁ 7. Wzorce Adapter i Fasada. Zdolność adaptacji

  • Adaptery są wszędzie wokół nas (232)
  • Adaptery obiektowe (233)
  • Jeśli coś chodzi jak kaczka i kwacze jak kaczka, to musi może być kaczką indykiem opakowanym w adapter kaczki... (237)
  • Testujemy adapter dla indyka (236)
  • Wzorzec Adapter bez tajemnic (237)
  • Definicja wzorca Adapter (239)
  • Adaptery obiektów i klas (240)
  • Adaptery w świecie rzeczywistym (244)
  • Adaptujemy interfejs Enumeration do wymagań interfejsu Iterator (245)
  • Nie ma to jak kino domowe (251)
  • Oglądanie filmów (wersja dla prawdziwych twardzieli) (252)
  • Światła, kamera, fasada! (254)
  • Konstruujemy fasadę naszego systemu kina domowego (257)
  • Implementujemy uproszczony interfejs (258)
  • Czas na seans (wersja soft, dla całej rodziny) (259)
  • Definicja wzorca Fasada (260)
  • Reguła ograniczonej interakcji (261)
  • Jak zrazić do siebie przyjaciół, czyli interakcje między obiektami (262)
  • Wzorzec Fasada kontra reguła ograniczania interakcji (265)
  • Twoja projektowa skrzynka narzędziowa (266)

ROZDZIAŁ 8. Wzorzec Metoda Szablonowa. Hermetyzacja algorytmów

  • Czas na nieco więcej kofeiny... (270)
  • Tworzymy klasy reprezentujące kawę i herbatę (w języku Java) (271)
  • Kawa i herbata, czyli klasy abstrakcyjne (274)
  • Posuńmy nasz projekt o krok dalej... (275)
  • Wyodrębnianie metody recepturaParzenia() (276)
  • Co udało się nam osiągnąć? (279)
  • Spotkanie z wzorcem Metoda Szablonowa (280)
  • Co nam daje zastosowanie metody szablonowej? (282)
  • Definicja wzorca Metoda Szablonowa (283)
  • Stosujemy haczyk we wzorcu Metoda Szablonowa... (286)
  • Zastosowanie haczyka (287)
  • Reguła Hollywood a wzorzec Metoda Szablonowa (291)
  • Wzorzec Metoda Szablonowa w dziczy... (293)
  • Sortowanie przy użyciu wzorca Metoda Szablonowa (294)
  • A teraz musimy posortować parę kaczek... (295)
  • Czym jest metoda compareTo()? (295)
  • Porównywanie kaczek z innymi kaczkami (296)
  • No to posortujmy sobie trochę kaczek (297)
  • Robimy maszynę do sortowania kaczek (298)
  • Zabawy z ramkami (300)
  • Tworzenie niestandardowej listy przy użyciu klasy AbstractList (301)
  • Twoja projektowa skrzynka narzędziowa (305)

ROZDZIAŁ 9. Wzorce Iterator i Kompozyt. Zarządzanie kolekcjami

  • Z ostatniej chwili - fuzja baru Obiadowo i restauracji Naleśnikarnia (308)
  • Przegląd pozycji menu (309)
  • Implementacja specyfikacji kelnerki: podejście pierwsze (313)
  • Czy można hermetyzować iteracje? (315)
  • Poznajemy wzorzec Iterator (317)
  • Dodawanie iteratora do ObiadowoMenu (318)
  • Poprawiamy kod kelnerki (320)
  • Testowanie kodu (321)
  • Przegląd aktualnego rozwiązania (323)
  • Uproszczenia po wprowadzeniu interfejsu java.util.Iterator (325)
  • Wzorzec Iterator - definicja (328)
  • Struktura wzorca Iterator (329)
  • Reguła pojedynczej odpowiedzialności (330)
  • Poznajemy interfejs Iterable (333)
  • Usprawniona pętla for Javy (334)
  • Rzut oka na klasę ObiadManiaMenu (337)
  • Iteratory i kolekcje (343)
  • Czy kelnerka jest już gotowa? (345)
  • Wzorzec Kompozyt (350)
  • Projektujemy menu bazujące na wzorcu Kompozyt (353)
  • Implementacja klasy MenuSkładnik (354)
  • Implementacja klasy PozycjaMenu (355)
  • Implementacja klasy Menu (356)
  • A teraz testujemy... (359)
  • Twoja projektowa skrzynka narzędziowa (365)

ROZDZIAŁ 10. Wzorzec Stan. Stan obiektu

  • Guma do żucia i Java (370)
  • Maszyny stanowe 101 (372)
  • Piszemy kod (374)
  • Test wewnętrzny (376)
  • Wiedziałeś, że to jest blisko... prośba o zmianę! (378)
  • Kłopotliwy stan rzeczy (380)
  • Nowy projekt (382)
  • Definiowanie interfejsów i klas reprezentacji stanu (383)
  • Nowa wersja automatu sprzedającego (386)
  • Przyjrzyjmy się nowej klasie AutomatSprzedający... (387)
  • Implementowanie kolejnych stanów (388)
  • Definicja wzorca Stan (394)
  • Została jeszcze promocja 1 z 10 (397)
  • Kończymy implementowanie promocji (398)
  • Wersja demo dla prezesa (399)
  • Weryfikacja projektu... (401)
  • Niemal zapomnieliśmy! (404)
  • Twoja projektowa skrzynka narzędziowa (407)

ROZDZIAŁ 11. Wzorzec Pośrednik. Kontrola dostępu do obiektu

  • Kod monitora (415)
  • Testowanie monitora (416)
  • Zdalne wywołania metod 101 (421)
  • Przygotowanie klasy AutomatSprzedający do pracy w charakterze usługi zdalnej (434)
  • Dodanie wpisu do rejestru RMI... (436)
  • Definicja wzorca Pośrednik (443)
  • Przygotuj się na pośrednika wirtualnego (445)
  • Projektowanie wirtualnego pośrednika do wyświetlania okładek (447)
  • Kod klasy PośrednikObrazków (448)
  • Wykorzystanie mechanizmów Java API do stworzenia pośrednika chroniącego (457)
  • Swatanie w Obiektowie (458)
  • Implementacja interfejsu Osoba (459)
  • Teatrzyk - ochrona podmiotów (461)
  • Z lotu ptaka - budowanie dynamicznego pośrednika klasy Osoba (462)
  • Zoo pośredników (470)
  • Twoja projektowa skrzynka narzędziowa (472)
  • Kod przeglądarki okładek (475)

ROZDZIAŁ 12. Wzorce złożone. Łączenie wzorców

  • Współdziałanie wzorców (480)
  • Powrót kaczek (481)
  • Co zrobiliśmy? (503)
  • Widok z lotu kaczki - diagram klas (504)
  • Król wzorców złożonych (506)
  • Poznajemy wzorzec Model-Widok-Kontroler (509)
  • Przyjrzyjmy się bliżej... (510)
  • Model-Widok-Kontroler jako zestaw wzorców (512)
  • Wykorzystujemy MVC do sterowania beatem... (514)
  • Piszemy kod elementów (517)
  • A teraz spójrzmy na rzeczywistą klasę BeatModel (518)
  • Widok (519)
  • Implementowanie widoku (520)
  • A teraz kontroler (522)
  • Łączymy wszystko w całość... (524)
  • Eksplorujemy możliwości wzorca Strategia (525)
  • Adaptowanie modelu (526)
  • Testujemy... (528)
  • Twoja projektowa skrzynka narzędziowa (531)

ROZDZIAŁ 13. Lepsze życie dzięki wzorcom. Wzorce projektowe w praktyce

  • Wzorzec projektowy - definicja (551)
  • Bliższe spojrzenie na definicję wzorca (553)
  • Niech moc będzie z Tobą (554)
  • A więc chcesz zostać autorem wzorców projektowych (559)
  • Porządkowanie wzorców projektowych (561)
  • Myślenie wzorcami (566)
  • Głowa pełna wzorców (569)
  • Nie zapominaj o potędze wspólnego słownictwa (571)
  • Gang Czterech w Obiektowie (573)
  • Podróż dopiero się zaczyna... (574)
  • Zoo pełne wzorców (576)
  • Walka ze złem przy użyciu antywzorców (578)
  • Twoja projektowa skrzynka narzędziowa (580)
  • Wyjeżdżamy z Obiektowa (581)

DODATEK: Pozostałe wzorce

  • Most (584)
  • Budowniczy (586)
  • Łańcuch Odpowiedzialności (588)
  • Pyłek (590)
  • Interpreter (592)
  • Mediator (594)
  • Memento (596)
  • Prototyp (598)
  • Odwiedzający (600)

Skorowidz (602)

Kategoria: Programowanie
Zabezpieczenie: Watermark
Watermark
Watermarkowanie polega na znakowaniu plików wewnątrz treści, dzięki czemu możliwe jest rozpoznanie unikatowej licencji transakcyjnej Użytkownika. E-książki zabezpieczone watermarkiem można odczytywać na wszystkich urządzeniach odtwarzających wybrany format (czytniki, tablety, smartfony). Nie ma również ograniczeń liczby licencji oraz istnieje możliwość swobodnego przenoszenia plików między urządzeniami. Pliki z watermarkiem są kompatybilne z popularnymi programami do odczytywania ebooków, jak np. Calibre oraz aplikacjami na urządzenia mobilne na takie platformy jak iOS oraz Android.
ISBN: 978-83-283-7876-6
Rozmiar pliku: 39 MB

BESTSELLERY

Kategorie: