Nowoczesne aplikacje internetowe. MongoDB, Express, AngularJS, Node.js - ebook
Nowoczesne aplikacje internetowe. MongoDB, Express, AngularJS, Node.js - ebook
Poznaj nowe podejście do aplikacji internetowych!
Tradycyjne aplikacje internetowe składały się z dwóch elementów — ciężkiego back-endu odpowiadającego za przetwarzanie danych, ich walidację i przechowywanie oraz z klienta, którego zadaniem była prosta komunikacja z użytkownikiem. To rozwiązanie rodziło liczne kłopoty — przede wszystkim ze skalowaniem. Od nowoczesnych aplikacji użytkownicy wymagają najwyższej wydajności, niezawodności, możliwości działania w trybie offline oraz wygody użytkowania. Tradycyjne podejście do tworzenia aplikacji już się nie sprawdza. Potrzebujesz czegoś nowego!Na ratunek przychodzi drużyna — MongoDB, Express, AngularJS oraz Node.js. Dzięki temu zestawowi narzędzi będziesz w stanie stworzyć zaawansowaną aplikację z wygodnym interfejsem użytkownika oraz szerokimi możliwościami skalowania. Wystarczy, że sięgniesz po tę książkę i przyswoisz sobie zawartą w niej wiedzę. W publikacji znajdziesz odpowiedź na wiele pytań:
- Dlaczego warto wybrać AngularJS?
- Czym się charakteryzują bazy NoSQL?
- W jakich sytuacjach bazy NoSQL są lepsze od tradycyjnych baz relacyjnych?
- Dlaczego Node.js jest tak szybki?
Dzięki tej książce:
- Poznasz możliwości AngularJS oraz Node.js
- Przekonasz się, dlaczego warto wybrać MongoDB
- Przygotujesz praktyczne API w Node.js
- Poznasz narzędzie Gulp
- Wykorzystasz JSON Web Token do uwierzytelniania
- Przetestujesz aplikację
- Nauczysz się tworzyć nowoczesne aplikacje internetowe!
Aplikacje internetowe już nigdy nie będą takie same!
Jeff Dickey — wszechstronny programista sieciowy. Doświadczenie zdobywał przy pracy z licznymi start-upami z okolic San Francisco i Los Angeles. Obecnie prowadzi zespoły programistów i opracowuje projekty. Unika biurokracji, jest zaangażowany w serię spotkań Code for America Brigade w Los Angeles.
Spis treści
Przedmowa (9)
Wprowadzenie (10)
Rozdział 1. Jak zmienia się nowoczesna architektura sieci? (12)
- Powstanie aplikacji statycznych (14)
- Poznaj grubego klienta (17)
Rozdział 2. Dlaczego JavaScript jest dobrym wyborem dla nowoczesnych aplikacji? (20)
- Co to jest AngularJS? (22)
- Co to jest Node.js? (25)
- Co to jest Express? (33)
- Co to jest MongoDB? (35)
Rozdział 3. Rozpoczynamy pracę nad projektem aplikacji społecznościowej (40)
- Utworzenie statycznej imitacji strony wyświetlającej najnowsze posty (42)
- Użycie AngularJS w aplikacji (43)
- Dodawanie nowych postów (46)
- Co dalej? (49)
Rozdział 4. Utworzenie API Node.js (50)
- Punkt wyjścia (52)
- Utworzenie postów za pomocą API (54)
- Obsługa modeli MongoDB za pomocą Mongoose (55)
- Użycie modeli Mongoose wraz z API (56)
- Co dalej? (59)
Rozdział 5. Integracja Node.js i AngularJS (60)
- Komponent $http (62)
- Użycie $http do odczytu postów z API (63)
- Udostępnianie pliku posts.html za pomocą Node.js (64)
- Użycie $http do zapisu postów w API (65)
- Zmiana kolejności wyświetlania postów (66)
- Uporządkowanie pliku server.js (67)
- Uporządkowanie kodu AngularJS (71)
- Co dalej? (75)
Rozdział 6. Automatyzacja za pomocą Gulp (76)
- Wprowadzenie do Grunt i Gulp (78)
- "Witaj, świecie" w Gulp (79)
- Przygotowanie kodu JavaScript za pomocą Gulp (80)
- Kompilacja CSS za pomocą Gulp (87)
- Zadanie dev w Gulp (89)
- Inne wtyczki Gulp (91)
- Co dalej? (92)
Rozdział 7. Utworzenie uwierzytelniania w Node.js (94)
- Wprowadzenie uwierzytelniania na podstawie tokenu (96)
- JSON Web Token (JWT) (97)
- Użycie BCrypt (101)
- Uwierzytelnianie z użyciem MongoDB (103)
- Co dalej? (106)
Rozdział 8. Dodanie routingu i uwierzytelniania klienta (108)
- Routing (110)
- Utworzenie formularza logowania (113)
- Uwierzytelnianie Express (116)
- Zdarzenia AngularJS (119)
- Uwierzytelnianie postów aplikacji społecznościowej (121)
- HTML5 pushstate (123)
- Rejestracja (124)
- Wylogowanie (125)
- Zapamiętaj mnie (126)
- Klucz zewnętrzny użytkownika (127)
- Co dalej? (128)
Rozdział 9. Obsługa powiadomień za pomocą WebSocket (130)
- Wprowadzenie do WebSocket (132)
- Jak działa WebSocket? (133)
- Do czego można wykorzystać WebSocket? (134)
- WebSocket w budowanej aplikacji społecznościowej (135)
- WebSocket w AngularJS (139)
- Architektura WebSocket (141)
- Dynamiczna nazwa hosta WebSocket (146)
- Co dalej? (147)
Rozdział 10. Wykonywanie testów E2E (148)
- Konfiguracja narzędzia Protractor (150)
- Frameworki testowania w JavaScript (151)
- Utworzenie prostego testu Protractor (152)
- Przygotowanie w narzędziu Protractor definicji oczekiwanego zachowania (162)
- Wtyczka chai-as-promised (164)
- Kiedy należy wykonywać testy typu E2E? (165)
- Co dalej? (166)
Rozdział 11. Testowanie serwera Node.js (168)
- To nie całkiem są testy jednostkowe (170)
- Framework Mocha dla Node.js (171)
- Kontroler Post (173)
- SuperTest (174)
- Router bazowy (175)
- Użycie routera bazowego wraz z SuperTest (176)
- Modele w testach kontrolerów (177)
- Testowanie kontrolera z uwierzytelnieniem (179)
- Pokrycie kodu (181)
- Polecenie npm test (183)
- JSHint (184)
- Co dalej? (185)
Rozdział 12. Testowanie kodu AngularJS (186)
- Użycie narzędzia Karma (188)
- Bower (189)
- Konfiguracja narzędzia Karma (191)
- Podstawowy test usługi (193)
- Testowanie HTTP za pomocą narzędzia Karma (194)
- Użycie narzędzia Karma do przetestowania kontrolera (196)
- Testowanie za pomocą komponentów spy (200)
- Co dalej? (202)
Rozdział 13. Wdrożenie w Heroku (204)
- Platforma jako usługa (206)
- Jak działa Heroku? (207)
- 12 czynników w aplikacji (208)
- Wdrożenie aplikacji w Heroku (209)
- MongoDB w Heroku (211)
- Redis w Heroku (212)
- Kompilacja zasobów (214)
- Klaster Node.js (216)
- Co dalej? (217)
Rozdział 14. Wdrożenie w Digital Ocean (218)
- Co to jest Digital Ocean? (220)
- Architektura jeden kontra wiele serwerów (221)
- Fedora 22 (222)
- Utworzenie serwera (223)
- Instalacja Node.js (225)
- Instalacja MongoDB (226)
- Instalacja Redis (227)
- Uruchomienie aplikacji społecznościowej (229)
- Uruchomienie aplikacji społecznościowej za pomocą systemd (230)
- Wdrożenie bez przestoju serwera (231)
- Migracja do architektury wieloserwerowej (235)
- Co dalej? (237)
- Podsumowanie (238)
Skorowidz (239)
Kategoria: | Programowanie |
Zabezpieczenie: |
Watermark
|
ISBN: | 978-83-283-1761-1 |
Rozmiar pliku: | 4,9 MB |