JAVASCRIPT I WZORCE PROJEKTOWE PROGRAMOWANIE DLA ZAAWANSOWANYCH
TIMMS S.
wydawnictwo: HELION , rok wydania 2017, wydanie II
cena netto: 55.90 Twoja cena 53,11 zł + 5% vat - dodaj do koszyka
JavaScript i wzorce projektowe
Programowanie dla zaawansowanych
JavaScript przez mnóstwo lat był wykorzystywany głównie jako technika uzupełniania
podstawowej funkcjonalności stron internetowych. Dziś to się zmienia: JavaScript
należy do najpopularniejszych języków i jest wykorzystywany na wiele sposobów. Wzorce
projektowe to jedna z ciekawszych możliwości: dzięki nim programista bierze pod uwagę
sprawdzone rozwiązania.
Niniejsza książka jest przeznaczona dla osób używających JavaScriptu, które chcą
nauczyć się programowania obiektowego w tym języku, a także dobrze poznać standard
ECMAScript 2015.
Przedstawiono tu wzorce kreacyjne, strukturalne i operacyjne oraz metody ich
stosowania. Przeanalizowano wzorce widoku modelu i wzorce do budowy aplikacji
internetowych. Obszernie omówiono mikrousługi, a także wzorce do testowania kodu za
pomocą atrap obiektów i środowisk atrap obiektów oraz techniki monkey patching.
Opisano też kilka wzorców zaawansowanych, w tym wzorzec wprowadzania zależności i
przetwarzania końcowego w czasie rzeczywistym.
Najważniejsze zagadnienia omówione w książce:
czym są wzorce projektowe i jak należy organizować kod
poszczególne grupy wzorców projektowych i ich zastosowanie
programowanie funkcyjne i reaktywne
programowanie aspektowe
inne narzędzia zgodne ze standardem ECMAScript 2015/2016
O autorze (11)
O recenzencie (12)
Przedmowa (13)
Rozdział 1. Projektowanie dla przyjemności i zysku (17)
Droga do powstania języka JavaScript (17)
Początki (18)
Przerwa (21)
Pojawienie się aplikacji GMail (21)
Wszechobecność języka JavaScript (23)
Czym jest wzorzec projektowy? (25)
Antywzorce (28)
Podsumowanie (29)
CZĘŚĆ I. KLASYCZNE WZORCE PROJEKTOWE (31)
Rozdział 2. Organizacja kodu (33)
Porcje kodu (33)
O co tak w ogóle chodzi z zasięgiem globalnym? (35)
Obiekty w języku JavaScript (37)
Tworzenie prototypu (41)
Dziedziczenie (44)
Moduły (45)
Klasy i moduły standardu ECMAScript 2015 (49)
Najlepsze procedury i rozwiązywanie problemów (50)
Podsumowanie (50)
Rozdział 3. Wzorce kreacyjne (53)
Fabryka abstrakcyjna (54)
Implementacja (58)
Budowniczy (60)
Implementacja (61)
Metoda wytwórcza (63)
Implementacja (63)
Singleton (66)
Implementacja (67)
Mankamenty (68)
Prototyp (68)
Implementacja (69)
Wskazówki i zabiegi (70)
Podsumowanie (70)
Rozdział 4. Wzorce strukturalne (73)
Adapter (73)
Implementacja (75)
Most (77)
Implementacja (78)
Kompozyt (81)
Przykład (82)
Implementacja (83)
Dekorator (85)
Implementacja (86)
Fasada (87)
Implementacja (87)
Pyłek (89)
Implementacja (90)
Pełnomocnik (91)
Implementacja (92)
Rady i wskazówki (93)
Podsumowanie (94)
Rozdział 5. Wzorce operacyjne (95)
Łańcuch odpowiedzialności (96)
Implementacja (96)
Polecenie (100)
Komunikat polecenia (100)
Element wywołujący (Invoker) (102)
Element odbierający (Receiver) (103)
Interpreter (103)
Przykład (104)
Implementacja (104)
Iterator (106)
Implementacja (106)
Iteratory standardu ECMAScript 2015 (107)
Mediator (108)
Implementacja (109)
Memento (110)
Implementacja (111)
Obserwator (113)
Implementacja (114)
Stan (116)
Implementacja (117)
Strategia (119)
Implementacja (121)
Metoda szablonowa (123)
Implementacja (124)
Odwiedzający (125)
Rady i wskazówki (129)
Podsumowanie (130)
CZĘŚĆ II. INNE WZORCE (131)
Rozdział 6. Programowanie funkcyjne (133)
Funkcje w programowaniu funkcyjnym są pozbawione efektów ubocznych (134)
Przekazywanie funkcji (134)
Implementacja (136)
Filtry i potoki (138)
Implementacja (139)
Akumulatory (141)
Implementacja (142)
Zapamiętywanie (142)
Implementacja (143)
Niezmienność (145)
"Leniwe" tworzenie instancji (146)
Implementacja (146)
Rady i wskazówki (148)
Podsumowanie (149)
Rozdział 7. Programowanie reaktywne (151)
Zmiany stanu aplikacji (152)
Strumienie (152)
Filtrowanie strumieni (155)
Scalanie strumieni (157)
Strumienie powiązane z multipleksowaniem (159)
Rady i wskazówki (160)
Podsumowanie (160)
Rozdział 8. Wzorce aplikacji (161)
Najpierw trochę historii (162)
Model View Controller (162)
Kod oparty na wzorcu MVC (167)
Model View Presenter (171)
Kod oparty na wzorcu MVP (172)
Model View ViewModel (174)
Kod oparty na wzorcu MVVM (176)
Lepszy sposób przenoszenia zmian między modelem i widokiem (177)
Obserwacja zmian widoku (179)
Rady i wskazówki (180)
Podsumowanie (180)
Rozdział 9. Wzorce internetowe (181)
Wysyłanie kodu JavaScript (181)
Łączenie plików (182)
Minifikacja (185)
Sieci CDN (186)
Dodatki (187)
Biblioteka jQuery (187)
Biblioteka d3 (189)
Jednoczesne realizowanie dwóch działań - wielowątkowość (192)
Wzorzec Wyłącznik (194)
Wycofanie (195)
Ograniczanie funkcjonalności aplikacji (196)
Wzorzec obiektów Promise (197)
Rady i wskazówki (199)
Podsumowanie (200)
Rozdział 10. Wzorce przesyłania komunikatów (201)
Czym w ogóle jest komunikat? (202)
Polecenia (203)
Zdarzenia (204)
Żądanie-odpowiedź (206)
Publikowanie-subskrybowanie (209)
Rozprzestrzenianie (212)
Kolejki utraconych wiadomości (215)
Ponawianie komunikatu (216)
Potoki i filtry (217)
Tworzenie wersji komunikatów (218)
Rady i wskazówki (219)
Podsumowanie (220)
Rozdział 11. Mikrousługi (221)
Fasada (223)
Selektor usługi (224)
Usługi agregujące (225)
Potok (226)
Aktualizator komunikatów (227)
Wzorce niepowodzeń (229)
Ograniczanie funkcjonalności usługi (229)
Magazyn komunikatów (229)
Ponawianie komunikatów (230)
Idempotentność obsługi komunikatów (231)
Rady i wskazówki (231)
Podsumowanie (232)
Rozdział 12. Wzorce używane do testowania (233)
Piramida testowania (234)
Testowanie po trochę za pomocą testów jednostkowych (234)
Technika Arrange-Act-Assert (236)
Asercja (237)
Obiekty fałszywe (237)
Szpiedzy testów (239)
Elementy zastępcze (240)
Atrapa obiektu (242)
Technika monkey patching (243)
Interakcja z interfejsem użytkownika (243)
Testowanie przy użyciu przeglądarki (243)
Oszukiwanie modelu DOM (244)
Opakowywanie operacji modyfikowania (245)
Rady i wskazówki (246)
Podsumowanie (247)
Rozdział 13. Wzorce zaawansowane (249)
Wprowadzanie zależności (249)
Przetwarzanie końcowe w czasie rzeczywistym (253)
Programowanie aspektowe (255)
Kody mixin (257)
Makra (258)
Rady i wskazówki (260)
Podsumowanie (260)
Rozdział 14. ECMAScript 2015/2016 - obecne rozwiązania (261)
TypeScript (261)
Dekoratory (262)
Słowa kluczowe async i await (263)
Typowanie (264)
BabelJS (265)
Klasy (267)
Parametry domyślne (269)
Literały szablonu (270)
Powiązania bloków za pomocą słowa kluczowego let (271)
Środowisko produkcyjne (272)
Rady i wskazówki (272)
Podsumowanie (272)
Skorowidz (275)
280 stron, Format: 17.1x22.9, oprawa miękka
Księgarnia nie działa. Nie odpowiadamy na pytania i nie realizujemy zamówien. Do odwolania !.