Praktyczne rozwiązania dla projektantów aplikacji sieciowych
Projektowanie aplikacji z wykorzystaniem technologii Ajax
Dynamiczne interfejsy użytkownika
Usługi sieciowe
Technologia Ajax, będąca połączeniem języków XML i JavaScript, ostatnio zyskuje coraz większe uznanie wśród twórców witryn WWW i aplikacji sieciowych. Pozwala na ograniczenie do minimum komunikacji pomiędzy przeglądarką i serwerem, dzięki czemu aplikacje internetowe zachowują się niemal identycznie jak powszechnie wykorzystywane narzędzia biurkowe. Użytkownicy programów zaprojektowanych z wykorzystaniem Ajaksa nie muszą czekać na przeładowanie strony -- odbywa się to w tle i nie wpływa na szybkość działania. W dobie rosnącej popularności narzędzi internetowych Ajax wydaje się być idealnym rozwiązaniem.
Czytając książkę "Ajax. Wzorce projektowe" opanujesz najlepsze praktyki tworzenia aplikacji sieciowych z wykorzystaniem tej technologii. Poznasz podstawowe wzorce projektowe oraz zasady ich stosowania w typowych aplikacjach. Nauczysz się korzystać z usług sieciowych, przesyłu strumieniowego i modelu DOM. Przeczytasz o optymalizacji kodu oraz powtórnym wykorzystywaniu jego fragmentów. Znajdziesz tu także wzorce dotyczące funkcjonalności i użyteczności witryn WWW oraz efektów graficznych. Ostatnią grupę wzorców opisanych w książce stanowią techniki diagnozowania tworzonych aplikacji.
Geneza Ajaksa
Podstawy projektowania w Ajaksie
Zdalne wywoływanie poleceń
Usługi sieciowe
Transformacje XSLT
Refaktoryzacja kodu
Optymalizowanie wydajności aplikacji
Efekty graficzne
Użyteczne formularze
Testowanie aplikacji
Przedmowa (7)
Część I Wprowadzenie (13)
Rozdział 1. Wprowadzenie do Ajaksa (15)
Ajax i użyteczny internet (15)
Narodziny Ajaksa (17)
Ajaksyfikacja internetu - historia portali (18)
Programy stacjonarne w sieci - historia aplikacji biurowych (20)
Cechy aplikacji Ajax (22)
Technologie związane z Ajaksem (26)
Budowa wywołań kierowanych do serwera (27)
Trendy w technologiach związanych z Ajaksem (29)
Wnioski (33)
Rozdział 2. Wzorcowy samouczek (35)
Technologie Ajaksa w okamgnieniu (35)
Ajaksyfikacja aplikacji sieciowej - jeden wzorzec naraz (41)
Projekty i kata (54)
Wnioski (55)
Rozdział 3. Projektowanie w Ajaksie - zasady i wzorce (57)
Pożądane cechy aplikacji Ajax (57)
Projektowanie w Ajaksie (58)
Przegląd wzorców Ajax (61)
Budowa wzorca (66)
Programy demonstracyjne wykorzystujące wzorce Ajax (69)
Wnioski (70)
Część II Wzorce dla podstawowych technologii (71)
Rozdział 4. Aplikacja Ajax (73)
Aplikacja Ajax (73)
Rozdział 5. Manipulowanie wyglądem (83)
Zmiana wyglądu (83)
Zmiana układu strony (92)
Rozdział 6. Zdalne wywoływanie poleceń (99)
Usługi sieciowe (100)
Wywołania XMLHttpRequest (105)
Wywołania IFrame (122)
Strumieniowanie HTTP (127)
JavaScript na żądanie (137)
Rozdział 7. Działania dynamiczne (147)
Działania użytkownika (147)
Planowanie (157)
Rozdział 8. Technologie rozszerzone (165)
Wzbogacone wtyczki (165)
Część III Wzorce programistyczne (175)
Rozdział 9. Usługi sieciowe (177)
Usługi REST (177)
Usługi RPC (193)
Procedury pośredniczące Ajax (198)
Komunikaty HTML (204)
Komunikaty ze zwykłym tekstem (209)
Komunikaty XML (213)
Komunikaty JSON (219)
Rozdział 10. Komunikacja przeglądarka-serwer (227)
Śledzenie wywołań (227)
Okresowe odświeżanie (232)
Blokowanie przesyłania (239)
Jawne przesyłanie (246)
Zdarzenia rozproszone (251)
Pośrednik między domenami (262)
Rozdział 11. Zapełnianie modelu DOM (271)
Wyspy danych XML (271)
XSLT po stronie przeglądarki (277)
Szablony po stronie przeglądarki (283)
Rozdział 12. Generowanie i powtórne wykorzystanie kodu (293)
Generowanie kodu po stronie serwera (293)
Komponenty działające w różnych przeglądarkach (300)
Rozdział 13. Optymalizacja wydajności (307)
Pamięć podręczna po stronie przeglądarki (307)
Pobieranie na podstawie przewidywania (315)
Wstępne szacowanie (321)
Wieloetapowe pobieranie (328)
Złożony klient (335)
Część IV Wzorce funkcjonalności i użyteczności (345)
Rozdział 14. Kontrolki (347)
Suwaki (348)
Wskaźnik postępu (354)
Drążenie danych (361)
Tabele danych (368)
Bogaty edytor tekstu (374)
Podpowiedzi (380)
Wyszukiwanie na żywo (387)
Wiersz poleceń na żywo (394)
Formularze na żywo (402)
Rozdział 15. Architektura strony (409)
Przeciąganie (409)
Sprajty (414)
Okna wyskakujące (420)
Zmienna zawartość (427)
Mikroodnośniki (436)
Portlety (442)
Obszar statusu (448)
Kontrolki do aktualizacji (452)
Wirtualny obszar roboczy (457)
Rozdział 16. Efekty graficzne (467)
Jednosekundowe wyróżnienie (467)
Jednosekundowa zmiana (477)
Jednosekundowy ruch (484)
Wyróżnianie (490)
Rozdział 17. Funkcjonalność (495)
Leniwa rejestracja (496)
Bezpośrednie logowanie (509)
Przechowywanie bezpieczne ze względu na serwer (515)
Limit czasu (521)
Sygnały kontrolne (531)
Niepowtarzalne adresy URL (538)
Część V Wzorce rozwojowe (555)
Rozdział 18. Diagnostyka (557)
Rejestrowanie (557)
Diagnozowanie (561)
Sprawdzanie zawartości modelu DOM (564)
Śledzenie przepływu danych (569)
Rozdział 19. Testowanie (573)
Symulowanie usług (573)
Testy po stronie przeglądarki (577)
Testy usług (581)
Testy systemu (584)
Dodatki (589)
Dodatek A Platformy i biblioteki Ajaksa (591)
Dodatek B Instalowanie przykładowego kodu (629)
Dodatek C Wzorce i języki wzorców (631)
Dodatek D Literatura cytowana (633)
Skorowidz (635)