Biblioteka jQuery
Sprawdzone wzorce projektowe
jQuery jest lekką, wszechstronną i rozszerzalną biblioteką języka
JavaScript o ogromnych możliwościach.
Zapewnia prosty w użyciu API, który jest bezproblemowo obsługiwany przez różne
przeglądarki i znacząco ułatwia wykonywanie modyfikacji i operacji przechodzenia w
obrębie modelu DOM dokumentów HTML, obsługę zdarzeń, uruchamianie animacji i
korzystanie z technologii Ajax. Pozwala to na coraz bardziej złożone interakcje z
użytkownikiem oraz na obsługę dużych implementacji aplikacji.
Niniejsza książka jest przeznaczona dla projektantów, którzy pracując z
biblioteką jQuery, chcą wykorzystywać różne standardowe wzorce branżowe.
Docenią ją zespoły programistów, którym ułatwi pisanie dobrze zorganizowanych i
rozszerzalnych implementacji. Zaprezentowano tu różne wzorce projektowe, takie jak
Fasada, Obserwator czy wzorce optymalizacji. Omówiono również techniki i biblioteki
związane z tworzeniem szablonów klienckich, a także przedstawiono kilka wzorców
projektowania dodatków. Nie zabrakło opisu sprawdzonych procedur i wskazówek dotyczących
wydajności, dzięki którym maksymalnie wykorzystasz możliwości biblioteki jQuery!
W książce między innymi:
Przypomnienie najważniejszych informacji o jQuery
Struktura aplikacji: podział na niezależne moduły i rozdzielanie kodu
Emitowanie i odbieranie zdarzeń
Tworzenie abstrakcji złożonych interfejsów API
Izolowanie procedury generowania złożonych części aplikacji
Interfejsy API Deferred i Promises
Tworzenie szablonów klienckich
- Zespół
- O autorze
- O recenzencie
- Przedmowa
- Zawartość książki
- Co jest niezbędne do pracy z tą książką?
- Dla kogo jest ta książka?
- Konwencje zastosowane w tej książce
- Opinie Czytelników
- Pomoc
- Przykłady kodu do pobrania
- Errata
- Rozdział 1. Utrwalenie wiedzy o bibliotece jQuery i wzorcu Kompozyt
- Biblioteka jQuery i obsługa skryptowa modelu DOM
- Modyfikowanie modelu DOM za pomocą biblioteki jQuery
- Tworzenie łańcucha metod i interfejsy płynne
- Wzorzec Kompozyt
- Sposób wykorzystania wzorca Kompozyt przez bibliotekę jQuery
- Porównanie korzyści uzyskiwanych w przypadku rezygnacji ze zwykłego interfejsu API
modelu DOM
- Użycie wzorca Kompozyt do projektowania aplikacji
- Przykładowy przypadek użycia
- Implementacja kolekcji kompozytu
- Przykład wykonania kodu
- Implementacje alternatywne
- Wzorzec Iterator
- Sposób wykorzystania wzorca Iterator przez bibliotekę jQuery
- Powiązanie wzorca Iterator z wzorcem Kompozyt
- Zastosowanie wzorca Iterator
- Podsumowanie
- Rozdział 2. Wzorzec Obserwator
- Wprowadzenie do wzorca Obserwator
- Sposób wykorzystania wzorca Obserwator przez bibliotekę jQuery
- Metoda on biblioteki jQuery
- Obserwator gotowości dokumentu
- Demonstracja przykładowego przypadku użycia
- Porównanie wzorca Obserwator z użyciem atrybutów zdarzeń
- Zapobieganie wyciekom pamięci
- Wprowadzenie do wzorca Obserwator ze zdarzeniami delegowanymi
- Upraszczanie kodu przez wzorzec Obserwator ze zdarzeniami delegowanymi
- Porównanie korzyści związanych z wykorzystaniem pamięci
- Podsumowanie
- Rozdział 3. Wzorzec Publikowanie/Subskrybowanie
- Wprowadzenie do wzorca Publikowanie/Subskrybowanie
- Różnice między wzorcem Publikowanie/Subskrybowanie i wzorcem Obserwator
- Adaptowanie wzorca Publikowanie/Subskrybowanie przez bibliotekę jQuery
- Zdarzenia niestandardowe w bibliotece jQuery
- Implementowanie schematu wzorca Publikowanie/Subskrybowanie za pomocą zdarzeń
niestandardowych
- Demonstracja przykładowego przypadku użycia
- Użycie wzorca Publikowanie/Subskrybowanie w przykładzie panelu sterowania
- Rozszerzanie implementacji
- Użycie dowolnego obiektu jako brokera
- Zastosowanie przestrzeni nazw zdarzeń niestandardowych
- Podsumowanie
- Rozdział 4. Dziel i zwyciężaj za pomocą wzorca Moduł
- Moduły i przestrzenie nazw
- Hermetyzowanie integralnych części implementacji
- Unikanie zmiennych globalnych za pomocą przestrzeni nazw
- Korzyści oferowane przez wzorce modułów i przestrzeni nazw
- Powszechna akceptacja
- Wzorzec Literał obiektu
- Wzorzec Moduł
- Blok konstrukcyjny wzorca IIFE
- Prosty wzorzec Moduł IIFE
- Wykorzystanie wzorca Moduł przez bibliotekę jQuery
- Wariant wzorca Moduł z przestrzenią nazw jako parametrem
- Wariant wzorca Moduł zawartego we wzorcu IIFE
- Wzorzec Moduł udostępniający
- Użycie funkcji Strict Mode języka ECMAScript 5
- Wprowadzenie do modułów języka ECMAScript 6
- Użycie modułów w aplikacjach jQuery
- Główny moduł dashboard
- Moduł categories
- Moduł informationBox
- Moduł counter
- Przegląd implementacji
- Podsumowanie
- Rozdział 5. Wzorzec Fasada
- Wprowadzenie do wzorca Fasada
- Zalety wzorca Fasada
- Sposób adaptacji wzorca Fasada przez bibliotekę jQuery
- Interfejs API biblioteki jQuery operacji przechodzenia w obrębie modelu DOM
- Interfejs API operacji modyfikowania i uzyskiwania dostępu do właściwości
- Zastosowanie wzorca Fasada w aplikacjach
- Podsumowanie
- Rozdział 6. Wzorce Budowniczy i Fabryka
- Wprowadzenie do wzorca Fabryka
- Wykorzystanie wzorca Fabryka przez bibliotekę jQuery
- Użycie wzorca Fabryka w aplikacjach
- Wprowadzenie do wzorca Budowniczy
- Wykorzystanie wzorca Budowniczy przez interfejs API biblioteki jQuery
- Zastosowanie wzorca Budowniczy wewnętrznie przez bibliotekę jQuery
- Wykorzystanie wzorca Budowniczy w aplikacjach
- Podsumowanie
- Rozdział 7. Wzorce asynchronicznego przepływu sterowania
- Programowanie z wykorzystaniem wywołań zwrotnych
- Użycie prostych wywołań zwrotnych w języku JavaScript
- Konfigurowanie wywołań zwrotnych jako właściwości obiektu
- Zastosowanie wywołań zwrotnych w aplikacjach opartych na bibliotece jQuery
- Tworzenie metod akceptujących wywołania zwrotne
- Organizowanie wywołań zwrotnych
- Kolejkowanie wykonywania po kolei
- Unikanie antywzorca piekło wywołań zwrotnych
- Uruchamianie współbieżne
- Wprowadzenie do pojęcia obiektów Promise
- Użycie obiektów Promise
- Zastosowanie interfejsu API biblioteki jQuery opartego na obiektach Promise
- Użycie specyfikacji Promises/A+
- Porównanie biblioteki jQuery i obiektów Promise specyfikacji A+
- Zagadnienia zaawansowane
- Tworzenie łańcucha obiektów Promise
- Obsługa zgłaszanych błędów
- Łączenie obiektów Promise
- Sposób użycia obiektów Promise przez bibliotekę jQuery
- Transformacja obiektów Promise w obiekty innych typów
- Transformacja obiektów do postaci zgodnej ze specyfikacją Promises/A+
- Transformacja obiektów w obiekty Promise biblioteki jQuery
- Podsumowanie zalet obiektów Promise
- Podsumowanie
- Rozdział 8. Wzorzec Atrapa obiektu
- Wprowadzenie do wzorca Atrapa obiektu
- Użycie atrap obiektów w aplikacjach opartych na bibliotece jQuery
- Definiowanie faktycznych wymagań usługi
- Implementowanie atrapy usługi
- Użycie atrapy usługi
- Podsumowanie
- Rozdział 9. Tworzenie szablonów klienckich
- Wprowadzenie do biblioteki Underscore.js
- Użycie szablonów biblioteki Underscore.js w aplikacjach
- Oddzielanie szablonów HTML od kodu JavaScriptu
- Wprowadzenie do biblioteki Handlebars.js
- Użycie biblioteki Handlebars.js w aplikacjach
- Oddzielanie szablonów HTML od kodu JavaScriptu
- Wstępne kompilowanie szablonów
- Asynchroniczne pobieranie szablonów HTML
- Adaptowanie dynamicznego ładowania szablonów w istniejącej implementacji
- Moderacja to najlepsza rzecz
- Podsumowanie
- Rozdział 10. Wzorce do projektowania dodatków i widżetów
- Wprowadzenie do dodatków biblioteki jQuery
- Stosowanie zasad obowiązujących w bibliotece jQuery
- Przetwarzanie obiektów kolekcji kompozytu
- Możliwość dalszego tworzenia łańcucha metod
- Użycie metody $.noConict()
- Opakowywanie z wykorzystaniem wzorca IIFE
- Tworzenie dodatków do wielokrotnego wykorzystania
- Akceptowanie parametrów konfiguracyjnych
- Tworzenie stanowych dodatków biblioteki jQuery
- Implementowanie stanowego dodatku biblioteki jQuery
- Usuwanie instancji dodatku
- Implementowanie metod pobierających i ustawiających
- Użycie dodatku w aplikacji panelu sterowania
- Użycie projektu dodatków jQuery Boilerplate
- Dodawanie metod do dodatku
- Wybieranie nazwy
- Podsumowanie
- Rozdział 11. Wzorce optymalizacji
- Umieszczanie skryptów w pobliżu końca kodu strony
- Tworzenie pakunków i minifikowanie zasobów
- Użycie parametrów wzorca IIFE
- Zastosowanie sieci CDN
- Zastosowanie interfejsu API sieci CDN JSDelivr
- Optymalizowanie wspólnego kodu w JavaScripcie
- Tworzenie lepszych pętli for
- Tworzenie wydajnych selektorów CSS
- Tworzenie efektywnego kodu jQuery
- Minimalizowanie operacji przechodzenia w obrębie modelu DOM
- Buforowanie obiektów biblioteki jQuery
- Określanie zasięgu operacji przechodzenia w wypadku elementów
- Tworzenie łańcucha metod biblioteki jQuery
- Nie przesadzaj
- Usprawnianie operacji modyfikacji modelu DOM
- Tworzenie elementów modelu DOM
- Określanie stylów i wykonywanie animacji
- Modyfikowanie odłączonych elementów
- Wprowadzenie do wzorca Pyłek
- Użycie obserwatorów ze zdarzeniami delegowanymi
- Użycie metody $.noop()
- Użycie dodatku $.single
- Leniwe ładowanie modułów
- Podsumowanie
216 stron, Format: 17.0x23.5cm, oprawa miękka