Ajax_dla_zaawansowanych_Architektura_i_najlepsze_rozwiazania_ajaxzw.pdf
(
472 KB
)
Pobierz
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
Ajax dla zaawansowanych.
Architektura i najlepsze
rozwiĴzania
Autor: Shawn M. Lauriat
TĀumaczenie: RadosĀaw Meryk
ISBN: 978-83-246-1585-8
TytuĀ oryginaĀu:
Advanced Ajax:
Architecture and Best Practices
Format: 168x237, stron: 392
Dowiedz siķ:
¤
Jak tworzyě rozbudowane i idealnie dopasowane do potrzeb interfejsy?
¤
Jak zapewniě uniwersalnoľě, skalowalnoľě oraz Āatwoľě eksploatacji?
¤
Jak zaprojektowaě architekturķ aplikacji?
Ajax (skrt od ang. Asynchronous JavaScript and XML) to niezwykle popularna
technologia tworzenia serwisw internetowych, w ktrej poĀĴczono kilka sprawdzonych
technik. Dziķki tej zintegrowanej technologii do niezbķdnego minimum zostaĀa
ograniczona iloľě danych przesyĀanych pomiķdzy serwerem a oknem przeglĴdarki
uŃytkownika. Nie tylko to przysporzyĀo Ajaksowi zwolennikw Ð jest on takŃe bardzo
dobrym narzķdziem do tworzenia interaktywnych serwisw internetowych. Sprawdza
siķ rwnieŃ przy przeprowadzaniu weryfikacji danych oraz rysowaniu wykresw
w czasie rzeczywistym. Dziķki asynchronicznym wywoĀaniom umoŃliwia szybszĴ
interakcjķ z uŃytkownikiem, a poszczeglne sekcje mogĴ byě wywoĀywane
indywidualnie, dziķki czemu aplikacja sprawia wraŃenie bardziej dynamicznej.
KsiĴŃka âAjax dla zaawansowanych. Architektura i najlepsze praktykiÒ to idealna
lektura dla programisty, ktry miaĀ juŃ przyjemnoľě pracowaě z Ajaksem. Podjķto tu
wszystkie zagadnienia niezbķdne do tworzenia dynamicznych aplikacji, niezaleŃnie
od uŃytych narzķdzi i technologii. Na praktycznych przykĀadach przedstawiono sposoby
wykorzystania Ajaksa do tworzenia rozbudowanych interfejsw w przeglĴdarce
dla aplikacji internetowych, ze szczeglnym uwzglķdnieniem ich uniwersalnoľci,
moŃliwoľci wielokrotnego wykorzystania kodu, skalowalnoľci oraz Āatwoľci
eksploatacji. Podrķcznik wskazuje zarwno sytuacje, w ktrych Ajax jest przydatny,
jak i takie, w ktrych jego wybr nie speĀni oczekiwaĺ uŃytkownika.
¤
Planowanie interfejsw Ajaksa
¤
Debugowanie, walidacja i optymalizacja kodu
¤
Tworzenie skalowalnych interefejsw
¤
Architektura aplikacji po stronie serwera oraz klienta
¤
Bezpieczeĺstwo aplikacji internetowych
¤
Projektowanie gier
Poznaj wiķcej niezwykĀych moŃliwoľci Ajaksa!
Wydawnictwo Helion
ul. Koľciuszki 1c
44-100 Gliwice
tel. 032 230 98 63
e-mail: helion@helion.pl
Spis treści
Podziękowania ............................................................................................................................... 11
O autorze ......................................................................................................................................... 13
Wprowadzenie ...................................................................................................... 15
0.1. Ajax — znaczenie skrótu ............................................................................. 16
0.1.1. Asynchroniczny ................................................................................ 17
0.1.2. JavaScript ........................................................................................... 17
0.1.3. XML .................................................................................................... 18
0.2. Cele niniejszej książki .................................................................................. 19
0.3. Wymagania wstępne potrzebne do studiowania tej książki ................. 23
Rozdział 1.
Użyteczność ........................................................................................................... 27
1.1. Interfejs czy pokaz ........................................................................................ 28
1.1.1. Implementacja .................................................................................. 30
1.2. Oczekiwania użytkowników ...................................................................... 32
1.3. Wskaźniki i inne formy kontaktu z użytkownikami .............................. 34
1.3.1. Throbber ............................................................................................ 34
1.3.2. Wskaźniki postępu ........................................................................... 37
1.3.3. Komunikaty dla użytkowników wyświetlane w pętli ............... 40
1.4. Znaczniki semantyczne ............................................................................... 47
1.4.1. Lepsza dostępność ........................................................................... 48
1.4.2. Łatwość użytkowania ...................................................................... 50
5
6
Spis treści
1.4.3. Łatwiejsza pielęgnacja ..................................................................... 51
1.4.4. Łatwiejsze przetwarzanie ................................................................ 52
1.5. Co łączy style CSS z językiem JavaScript .................................................. 55
Rozdział 2.
Dostępność ..............................................................................................................61
2.1. Wymagania WCAG i wytyczne sekcji 508 ................................................ 62
2.1.1. WCAG ................................................................................................. 63
2.1.2. Wytyczne sekcji 508 .......................................................................... 71
2.2. Czytniki ekranu mogą obsługiwać wywołania Ajax ............................... 73
2.2.1. Zastępowanie treści .......................................................................... 74
2.2.2. Walidacja formularzy ....................................................................... 75
2.3. Dyskretny Ajax .............................................................................................. 77
2.4. Projektowanie z uwzględnieniem zasad dostępności ............................ 79
2.4.1. Projektowanie aplikacji o wysokim kontraście ............................ 79
2.4.2. Interfejs z możliwością powiększania fragmentów ekranu ....... 81
2.4.3. Kontrolki, do których łatwo dotrzeć .............................................. 83
2.5. WAI-ARIA ....................................................................................................... 84
Rozdział 3.
Architektura aplikacji po stronie klienta .........................................................87
3.1. Obiekty i wyzwalanie zdarzeń ................................................................... 88
3.1.1. Obsługa zdarzeń obiektów wbudowanych .................................. 90
3.1.2. Obiekty JavaScript ............................................................................ 92
3.2. Wzorzec projektowy Model-Widok-Kontroler ...................................... 108
3.2.1. Model ................................................................................................ 109
3.2.2. Widok ................................................................................................ 113
3.2.3. Kontroler .......................................................................................... 122
3.3. Projektowanie aplikacji sterowanych zdarzeniami ............................... 125
3.3.1. Zalety wykorzystanej architektury .............................................. 126
Spis treści
7
Rozdział 4.
Debugowanie kodu po stronie klienta ........................................................... 129
4.1. Walidacja, walidacja, walidacja ................................................................ 130
4.1.1. Walidator zestawu znaczników ................................................... 132
4.1.2. Walidator CSS ................................................................................. 133
4.1.3. Ekstraktor semantyczny ................................................................ 134
4.2. Narzędzia w przeglądarkach i wtyczki .................................................. 135
4.2.1. Konsola ............................................................................................. 135
4.2.2. Internet Explorer ............................................................................ 136
4.2.3. Firefox ............................................................................................... 141
4.2.4. Opera ................................................................................................ 147
4.2.5. Safari ................................................................................................. 149
4.3. Profilowanie kodu JavaScript ................................................................... 152
4.3.1. Rozpoznawanie „wąskich gardeł” ............................................... 154
4.4. Testy jednostkowe ...................................................................................... 158
4.4.1. Asercje .............................................................................................. 160
4.4.2. Konfiguracja testu .......................................................................... 161
4.4.3. Właściwy test .................................................................................. 164
4.4.4. Obiekty-atrapy ................................................................................ 166
4.4.5. Zestawy testów ............................................................................... 169
Rozdział 5.
Optymalizacja wydajności ................................................................................ 173
5.1. Wydajność bazy danych ........................................................................... 174
5.1.1. Schemat ............................................................................................ 175
5.1.2. Zapytania ......................................................................................... 179
5.2. Zajętość pasma i opóźnienia ..................................................................... 181
5.2.1. Pasmo ............................................................................................... 183
5.2.2. Opóźnienia ...................................................................................... 187
8
Spis treści
5.3. Pamięć podręczna ....................................................................................... 190
5.3.1. System plików ................................................................................. 191
5.3.2. Pamięć ............................................................................................... 193
5.3.3. Uzupełnienie implementacji ......................................................... 200
5.4. Wykorzystanie HTTP/1.1 ........................................................................... 202
5.4.1. If-Modified-Since ............................................................................ 205
5.4.2. Range ................................................................................................ 206
5.5. Profilowanie kodu PHP ............................................................................. 209
5.5.1. Debuger APD ................................................................................... 209
5.5.2. Xdebug .............................................................................................. 213
Rozdział 6.
Skalowalne i łatwe do pielęgnacji aplikacje Ajaksa ....................................219
6.1. Ogólne praktyki .......................................................................................... 220
6.1.1. Użycie procesora ............................................................................. 221
6.1.2. Zużycie pamięci .............................................................................. 223
6.2. Wiele prostych interfejsów ........................................................................ 227
6.2.1. Modularność .................................................................................... 227
6.2.2. Późne ładowanie ............................................................................. 230
6.3. Rozbudowane interfejsy ............................................................................ 233
6.3.1. Aplikacje monolityczne .................................................................. 233
6.3.2. Wstępne ładowanie ........................................................................ 237
Rozdział 7.
Architektura aplikacji po stronie serwera ......................................................239
7.1. Projektowanie aplikacji dla wielu interfejsów ....................................... 240
7.2. Wzorzec projektowy Model-Widok-Kontroler ...................................... 244
7.2.1. Model ................................................................................................ 244
7.2.2. Kontroler .......................................................................................... 254
7.2.3. Widok ................................................................................................ 263
7.3. Wykorzystanie wzorca Fabryka
wraz z mechanizmem obsługi szablonów .............................................. 269
Plik z chomika:
bambus1441
Inne pliki z tego folderu:
Adobe_Illustrator_CS_CS_PL_Oficjalny_podrecznik_ilcspo.pdf
(621 KB)
Adobe_InDesign_CS3_CS3_PL_Oficjalny_podrecznik_incs3o.pdf
(7648 KB)
Adobe_InDesign_CS5_CS5_PL_Oficjalny_podrecznik_ind5op.pdf
(1957 KB)
Adobe_PageMaker_7_0_Oficjalny_podrecznik_pm7pod.pdf
(2949 KB)
Adobe_Photoshop_7_Wystarczy_jedno_klikniecie_ph7kli.pdf
(1208 KB)
Inne foldery tego chomika:
ebooki-Studia
ebooki-Szybkie czytanie i nauka
ebooki-Własna firma
ebooki-Zdrowie
Zgłoś jeśli
naruszono regulamin