single page web applications. programowanie aplikacji internetowych z javascript scan.pdf

(19529 KB) Pobierz
Spis tre ci
Przedmowa 11
Wst p 13
Podzi kowania 15
O ksi ce 17
C
Z
1.1.
I. W
PROWADZENIE
DO APLIKACJI
SPA
21
23
Rozdzia 1.Pierwsza aplikacja jednostronicowa
1.2.
1.3.
1.4.
Definicja, troch historii oraz nasze cele 24
1.1.1. Troch historii 24
1.1.2. Dlaczego musieli my tak d ugo czeka na aplikacje SPA JavaScript? 25
1.1.3. Cele 28
Budowanie pierwszej aplikacji SPA 29
1.2.1. Definiowanie celu 30
1.2.2. Zainicjowanie struktury plików 30
1.2.3. Konfigurowanie narz dzi dla programistów przegl darki Google Chrome 31
1.2.4. Projektowanie kodów HTML i CSS 31
1.2.5. Dodawanie kodu JavaScript 33
1.2.6. Sprawdzanie dzia ania aplikacji za pomoc narz dzi dla programistów
przegl darki Google Chrome 38
Korzy ci dla u ytkownika z dobrze napisanej aplikacji SPA 42
Podsumowanie 43
Rozdzia 2. JavaScript wraca do ask
2.1.
2.2.
2.3.
45
2.4.
2.5.
2.6.
2.7.
Zakres zmiennej 47
Wynoszenie zmiennej 49
Zaawansowane wynoszenie zmiennej i obiekt kontekstu wykonywania 51
2.3.1. Wynoszenie 51
2.3.2. Kontekst wykonywania i obiekt kontekstu wykonywania 52
a cuch zakresów 56
Obiekty i a cuch prototypów j zyka JavaScript 59
2.5.1. a cuch prototypów 62
G bsze spojrzenie na funkcje 67
2.6.1. Funkcje oraz funkcje anonimowe 68
2.6.2. Samowykonuj ce si funkcje anonimowe 68
2.6.3. Wzorzec modu u — wprowadzanie do j zyka JavaScript zmiennych
prywatnych 71
2.6.4. Domkni cia 76
Podsumowanie 79
Kup książkę
Poleć książkę
6
Spis tre ci
C
Z
3.1.
3.2.
II. K
LIENT APLIKACJI
SPA
81
83
Rozdzia 3. Projektowanie pow oki
3.3.
3.4.
3.5.
3.6.
3.7.
Gruntowne zrozumienie pow oki 84
Konfigurowanie plików i przestrzeni nazw 85
3.2.1. Tworzenie struktury plików 85
3.2.2. Pisanie kodu HTML aplikacji 86
3.2.3. Tworzenie g ównej przestrzeni nazw CSS 87
3.2.4. Tworzenie g ównej przestrzeni nazw JavaScript 89
Tworzenie kontenerów funkcji 90
3.3.1. Wybór strategii 90
3.3.2. Pisanie kodu HTML pow oki 91
3.3.3. Pisanie kodu CSS pow oki 92
Renderowanie kontenerów funkcji 95
3.4.1. Konwersja HTML na JavaScript 95
3.4.2. Dodawanie szablonu HTML do JavaScript 96
3.4.3. Pisanie arkusza stylów pow oki 97
3.4.4. Nakazanie aplikacji, aby korzysta a z pow oki 99
Zarz dzanie kontenerami funkcji 100
3.5.1. Pisanie metody rozwijania i zwijania suwaka czatu 101
3.5.2. Dodanie procedury obs ugi zdarze klikni cia suwaka czatu 103
Zarz dzanie stanem aplikacji 107
3.6.1. Zachowania przegl darki oczekiwane przez u ytkowników 107
3.6.2. Wybór strategii zarz dzania kontrolkami historii 108
3.6.3. Zmiana kotwicy przy wyst pieniu zdarzenia historii 109
3.6.4. U ycie kotwicy do sterowania stanem aplikacji 111
Podsumowanie 116
Rozdzia 4. Dodawanie modu ów funkcji
4.1.
119
4.2.
4.3.
4.4.
Strategia modu u funkcji 120
4.1.1. Porównanie z modu ami zewn trznymi 121
4.1.2. Modu y funkcji i fraktalowy wzorzec MVC 123
Konfigurowanie plików modu u funkcji 125
4.2.1. Planowanie struktury plików 125
4.2.2. Zape nianie plików 126
4.2.3. Co mamy napisane 132
Projektowanie interfejsów API metod 132
4.3.1. Wzorzec interfejsu kotwicy 133
4.3.2. Interfejsy API konfiguracji Czatu 134
4.3.3. Interfejs API inicjowania Czatu 135
4.3.4. Interfejs API metody setSliderPosition Czatu 136
4.3.5. Kaskada konfiguracji i inicjowania 137
Implementowanie interfejsu API funkcji 139
4.4.1. Arkusze stylów 139
4.4.2. Modyfikacja Czatu 144
4.4.3. Czyszczenie pow oki 149
4.4.4. Prze ledzenie wykonywania aplikacji 154
Kup książkę
Poleć książkę
Spis tre ci
4.5.
Dodanie cz sto potrzebnych metod
4.5.1. Metoda removeSlider 157
4.5.2. Metoda handleResize 158
Podsumowanie 162
156
7
4.6.
Rozdzia 5. Budowanie Modelu
5.1.
163
5.2.
5.3.
5.4.
5.5.
5.6.
Czym jest Model 164
5.1.1. Co zamierzamy zbudowa
165
5.1.2. Zadania Modelu 166
5.1.3. Czego Model nie robi 167
Konfigurowanie Modelu oraz innych plików 168
5.2.1. Planowanie struktury plików 168
5.2.2. Wype nianie plików 169
5.2.3. Zastosowanie ujednoliconej biblioteki do obs ugi wprowadzania danych
za pomoc dotyku i myszy 174
Projektowanie obiektu people 175
5.3.1. Projektowanie obiektów person 176
5.3.2. Projektowanie interfejsu API obiektu people 178
5.3.3. Dokumentowanie interfejsu API obiektu people 181
Budowanie obiektu people 182
5.4.1. Tworzenie listy symulowanych osób 182
5.4.2. Rozpocz cie budowy obiektu people 185
5.4.3. Doko czenie obiektu people 189
5.4.4. Testowanie interfejsu API obiektu people 195
Implementacja logowania i wylogowania w pow oce 197
5.5.1. Projektowanie wra e u ytkownika podczas logowania 198
5.5.2. Aktualizacja kodu JavaScript pow oki 199
5.5.3. Aktualizacja arkusza stylów pow oki 201
5.5.4. Testowanie procesów logowania i wylogowania za pomoc interfejsu
u ytkownika 202
Podsumowanie 203
Rozdzia 6. Doko czenie budowy modu ów modelu i danych
6.1.
205
6.2.
6.3.
Projektowanie obiektu chat 206
6.1.1. Projektowanie metod i zdarze
206
6.1.2. Dokumentowanie interfejsu API obiektu chat 209
Budowanie obiektu chat 210
6.2.1. Rozpocz cie budowy obiektu chat przez utworzenie metody join
6.2.2. Aktualizacja Atrapy, aby reagowa a na metod chat.join 213
6.2.3. Testowanie metody chat.join 214
6.2.4. Dodanie do obiektu chat obs ugi przesy ania wiadomo ci 216
6.2.5. Aktualizacja Atrapy w celu emulowania komunikatów 220
6.2.6. Testowanie obs ugi komunikatów dla obiektu chat 222
Dodanie obs ugi Awatara do Modelu 224
6.3.1. Dodanie obs ugi Awatara do obiektu chat 224
6.3.2. Modyfikacja Atrapy w celu emulacji awatarów 225
6.3.3. Testowanie obs ugi awatarów 226
6.3.4. Technika projektowania sterowanego testami 227
210
Kup książkę
Poleć książkę
8
6.4.
Spis tre ci
Doko czenie modu u funkcji czatu 229
6.4.1. Aktualizacja kodu JavaScript Czatu 230
6.4.2. Aktualizacja arkuszy stylów 237
6.4.3. Testowanie interfejsu u ytkownika Czatu 241
Tworzenie modu u funkcji awatara 242
6.5.1. Utworzenie pliku JavaScript Awatara 243
6.5.2. Tworzenie arkusza stylów Awatara 248
6.5.3. Aktualizacja pow oki i dokumentu przegl darkowego
6.5.4. Testowanie modu u funkcji awatara 250
Wi zanie danych oraz jQuery 250
Tworzenie modu u danych 252
Podsumowanie 255
6.5.
249
6.6.
6.7.
6.8.
C
Z
7.1.
III. S
ERWER APLIKACJI
SPA 257
259
Rola serwera 259
7.1.1. Uwierzytelnianie i autoryzacja 260
7.1.2. Walidacja 260
7.1.3. Przechowywanie i synchronizacja danych 261
Node.js 261
7.2.1. Dlaczego Node.js? 262
7.2.2. Tworzenie aplikacji „Witaj, wiecie!” za pomoc serwera Node.js 262
7.2.3. Instalowanie frameworku Connect i korzystanie z niego 266
7.2.4. Dodawanie funkcji po rednicz cych frameworku Connect 267
7.2.5. Instalowanie frameworku Express i korzystanie z niego 268
7.2.6. Dodawanie funkcji po rednicz cych frameworku Express 271
7.2.7. Korzystanie z ró nych rodowisk za pomoc frameworku Express 272
7.2.8. Serwowanie plików statycznych za pomoc frameworku Express 273
Zaawansowany routing 274
7.3.1. Trasy operacji CRUD obiektu user 275
7.3.2. Ogólny routing operacji CRUD 281
7.3.3. Umieszczenie routingu w osobnym module Node.js 284
Dodanie uwierzytelniania i autoryzacji 288
7.4.1. Uwierzytelnianie podstawowe 288
Technologia WebSocket i biblioteka Socket.IO 289
7.5.1. Prosta aplikacja Socket.IO 290
7.5.2. Socket.IO oraz serwery wymiany komunikatów 293
7.5.3. Aktualizacja kodu JavaScript z wykorzystaniem Socket.IO 294
Podsumowanie 297
Rozdzia 7. Serwer WWW
7.2.
7.3.
7.4.
7.5.
7.6.
Rozdzia 8. Baza danych serwera
8.1.
299
Rola bazy danych 300
8.1.1. Wybór magazynu danych 300
8.1.2. Eliminacja transformacji danych 300
8.1.3. Przeniesienie logiki w wymagane miejsce
301
Kup książkę
Poleć książkę
Zgłoś jeśli naruszono regulamin