Szczegóły ebooka

Node.js, MongoDB, AngularJS. Kompendium wiedzy

Node.js, MongoDB, AngularJS. Kompendium wiedzy

Brad Dayley

Ebook

Node.js to wiodące, serwerowe środowisko programistyczne. MongoDB to najpopularniejsza baza danych NoSQL, a AngularJS to szybko zyskujące wiodącą rolę środowisko służące do projektowania interfejsów opartych na technologii MVC. Czego chcieć więcej?

W sieci króluje połączenie serwera Apache z bazą danych MySQL i językiem PHP. Do niedawna wydawało się, że pozycja tej trójcy na fotelu lidera jest niezagrożona. Jednak na horyzoncie pojawili się nowi gracze: Node.js, MongoDB oraz AngularJS! Node.js to platforma, która pozwoli Ci stworzyć niezwykle wydajną aplikację internetową przy użyciu języka JavaScript. AngularJS specjalizuje się w interfejsie użytkownika opartym na MVC. Natomiast MongoDB to jedna z najpopularniejszych baz danych NoSQL. Co wynika z połączenia tych trzech narzędzi? Przekonasz się, gdy sięgniesz po tę niezwykłą książkę!

W trakcie lektury poznasz składnię i niuanse języka JavaScript, a następnie zgłębisz tajemnice środowiska Node.js. Na kolejnych stronach znajdziesz informacje na temat korzystania ze zdarzeń, procesów nasłuchiwania, wywołań zwrotnych oraz obsługi operacji wejścia-wyjścia. Ponadto przekonasz się, jak w Node.js zaimplementować usługi HTTP oraz skalować tworzoną aplikację. W dalszej części przejdziesz do poznawania tajników bazy MongoDB. Skonfigurujesz połączenie z bazą oraz poznasz dokumenty i ich kolekcje w MongoDB. Na sam koniec zobaczysz, jak przygotować klienta Twoich usług za pomocą AngularJS. Ta książka jest pasjonująca i prezentuje wszystkie warstwy nowoczesnej aplikacji internetowej — to lektura obowiązkowa każdego programisty!

Stwórz skalowalną aplikację za pomocą najnowocześniejszych narzędzi!


  • Implementowanie dynamicznego serwera WWW o dużej skalowalności za pomocą komponentów Node.js i Express
  • Implementowanie magazynu danych MongoDB dla aplikacji internetowych
  • Uzyskiwanie dostępu do bazy danych MongoDB z poziomu kodu JavaScript aplikacji Node.js oraz prowadzenie interakcji z bazą
  • Definiowanie niestandardowych dyrektyw AngularJS, które rozszerzają język HTML
  • Budowanie w języku JavaScript usług internetowych po stronie serwera
  • Implementowanie usług po stronie klienta, które mogą prowadzić interakcję z serwerem WWW środowiska Node.js
  • Tworzenie dynamicznych widoków przeglądarki, które zapewniają zaawansowane możliwości interakcji z użytkownikiem
  • Dodawanie do aplikacji i stron internetowych komponentów uwierzytelnianych kont użytkowników i zagnieżdżonych komentarzy 


Brad Dayley -— programista z wieloletnim doświadczeniem. Twórca licznych stron i aplikacji internetowych o różnym stopniu skomplikowania. Autor popularnych książek poświęconych bazom NoSQL, językowi JavaScript oraz innym narzędziom.

O autorze (13)

CZĘŚĆ I WPROWADZENIE (15)

Wprowadzenie (17)

  • Kto powinien przeczytać tę książkę? (17)
  • Dlaczego należy przeczytać tę książkę? (17)
  • Czego się dowiesz z tej książki? (18)
  • Czym jest środowisko Node.js? (19)
  • Czym jest komponent MongoDB? (20)
  • Czym jest komponent AngularJS? (20)
  • Jaka jest struktura tej książki? (21)
  • Uzyskiwanie przykładowych kodów (22)
  • Uwagi końcowe (22)

Rozdział 1. Podstawowe informacje o stosie Node.js-AngularJS (23)

  • Podstawowe środowisko projektowania aplikacji internetowych (23)
  • Komponenty stosu Node.js-AngularJS (27)
  • Podsumowanie (31)
  • W następnym rozdziale (32)

Rozdział 2. Wprowadzenie do języka JavaScript (33)

  • Definiowanie zmiennych (33)
  • Typy danych języka JavaScript (34)
  • Użycie operatorów (35)
  • Implementowanie pętli (39)
  • Tworzenie funkcji (42)
  • Zasięg zmiennych (44)
  • Użycie obiektów języka JavaScript (45)
  • Przetwarzanie łańcuchów (48)
  • Korzystanie z tablic (51)
  • Dodawanie obsługi błędów (53)
  • Podsumowanie (56)
  • W następnym rozdziale (56)

CZĘŚĆ II ŚRODOWISKO NODE.JS (57)

Rozdział 3. Wprowadzenie do środowiska Node.js (59)

  • Środowisko Node.js (59)
  • Instalowanie środowiska Node.js (60)
  • Praca z pakietami Node.js (62)
  • Tworzenie aplikacji Node.js (68)
  • Zapisywanie danych do konsoli (72)
  • Podsumowanie (74)
  • W następnym rozdziale (74)

Rozdział 4. Użycie zdarzeń, procesów nasłuchiwania, liczników i wywołań zwrotnych w środowisku Node.js (75)

  • Model zdarzeń środowiska Node.js (75)
  • Dodawanie zadań do kolejki zdarzeń (79)
  • Implementowanie wywołań zwrotnych (88)
  • Podsumowanie (92)
  • W następnym rozdziale (93)

Rozdział 5. Obsługa danych wejścia-wyjścia w środowisku Node.js (95)

  • Praca z danymi JSON (95)
  • Użycie modułu Buffer do buforowania danych (97)
  • Użycie modułu Stream do strumieniowania danych (104)
  • Podsumowanie (118)
  • W następnym rozdziale (118)

Rozdział 6. Uzyskiwanie dostępu do systemu plików ze środowiska Node.js (119)

  • Porównanie synchronicznych i asynchronicznych wywołań systemu plików (119)
  • Otwieranie i zamykanie plików (120)
  • Zapisywanie plików (122)
  • Odczytywanie plików (127)
  • Inne zadania związane z systemem plików (133)
  • Podsumowanie (140)
  • W następnym rozdziale (140)

Rozdział 7. Implementowanie usług HTTP w środowisku Node.js (141)

  • Przetwarzanie adresów URL (141)
  • Przetwarzanie łańcuchów zapytania i parametrów formularza (144)
  • Obiekty żądania, odpowiedzi i serwera (145)
  • Implementowanie klientów i serwerów HTTP w środowisku Node.js (153)
  • Implementowanie serwerów i klientów HTTPS (162)
  • Podsumowanie (165)
  • W następnym rozdziale (166)

Rozdział 8. Implementowanie usług gniazd w środowisku Node.js (167)

  • Gniazda sieciowe (167)
  • Obiekty Server i Socket protokołu TCP (168)
  • Implementowanie klientów i serwerów gniazd TCP (176)
  • Implementowanie serwerów i klientów TLS (181)
  • Podsumowanie (186)
  • W następnym rozdziale (186)

Rozdział 9. Skalowanie aplikacji przy użyciu wielu procesorów w środowisku Node.js (187)

  • Moduł process (187)
  • Implementowanie procesów podrzędnych (192)
  • Implementowanie klastrów procesów (203)
  • Podsumowanie (208)
  • W następnym rozdziale (209)

Rozdział 10. Użycie dodatkowych modułów środowiska Node.js (211)

  • Użycie modułu os (211)
  • Użycie modułu util (213)
  • Podsumowanie (219)
  • W następnym rozdziale (220)

CZĘŚĆ III KOMPONENT MONGODB (221)

Rozdział 11. Baza danych NoSQL i komponent MongoDB (223)

  • Dlaczego baza danych NoSQL? (223)
  • Komponent MongoDB (224)
  • Typy danych bazy danych MongoDB (226)
  • Planowanie modelu danych (227)
  • Podsumowanie (233)
  • W następnym rozdziale (234)

Rozdział 12. Wprowadzenie do korzystania z komponentu MongoDB (235)

  • Tworzenie środowiska komponentu MongoDB (235)
  • Administrowanie kontami użytkowników (241)
  • Konfigurowanie kontroli dostępu (245)
  • Administrowanie bazami danych (247)
  • Zarządzanie kolekcjami (250)
  • Podsumowanie (256)
  • W następnym rozdziale (256)

Rozdział 13. Wprowadzenie do współpracy komponentu MongoDB i środowiska Node.js (257)

  • Dodawanie sterownika komponentu MongoDB do środowiska Node.js (257)
  • Nawiązywanie połączenia z komponentem MongoDB ze środowiska Node.js (258)
  • Obiekty używane w sterowniku środowiska Node.js dla komponentu MongoDB (265)
  • Uzyskiwanie dostępu do baz danych i modyfikowanie ich (273)
  • Uzyskiwanie dostępu do kolekcji i modyfikowanie ich (276)
  • Podsumowanie (280)
  • W następnym rozdziale (280)

Rozdział 14. Modyfikowanie dokumentów bazy danych MongoDB w środowisku Node.js (281)

  • Opcje wprowadzania zmian w bazach danych (281)
  • Operatory aktualizowania baz danych (283)
  • Dodawanie dokumentów do kolekcji (283)
  • Uzyskiwanie dokumentów z kolekcji (286)
  • Aktualizowanie dokumentów w kolekcji (287)
  • Niepodzielne modyfikowanie dokumentów w kolekcji (290)
  • Zapisywanie dokumentów w kolekcji (291)
  • Użycie opcji upsert do wstawiania dokumentów do kolekcji (293)
  • Usuwanie dokumentów z kolekcji (294)
  • Usuwanie pojedynczego dokumentu z kolekcji (296)
  • Podsumowanie (297)
  • W następnym rozdziale (297)

Rozdział 15. Uzyskiwanie dostępu do dokumentów bazy danych MongoDB w środowisku Node.js (299)

  • Podstawowe informacje na temat zestawu danych (299)
  • Obiekty query (300)
  • Obiekty options zapytań (302)
  • Znajdowanie konkretnych zestawów dokumentów (304)
  • Określanie liczby dokumentów (306)
  • Ograniczanie zestawów wynikowych (308)
  • Sortowanie zestawów wynikowych (313)
  • Znajdowanie różnych wartości pola (315)
  • Grupowanie wyników (316)
  • Korzystanie ze środowiska MapReduce podczas agregowania wyników (319)
  • Podsumowanie (324)
  • W następnym rozdziale (324)

Rozdział 16. Użycie biblioteki Mongoose dla schematu ze strukturą i do sprawdzania poprawności (325)

  • Biblioteka Mongoose (326)
  • Nawiązywanie połączenia z bazą danych MongoDB za pomocą biblioteki Mongoose (327)
  • Definiowanie schematu (328)
  • Kompilowanie modelu (332)
  • Obiekt Query (333)
  • Obiekt Document (339)
  • Znajdowanie dokumentów za pomocą biblioteki Mongoose (340)
  • Dodawanie dokumentów za pomocą biblioteki Mongoose (343)
  • Aktualizowanie dokumentów za pomocą biblioteki Mongoose (344)
  • Usuwanie dokumentów za pomocą biblioteki Mongoose (349)
  • Agregowanie dokumentów za pomocą biblioteki Mongoose (351)
  • Użycie środowiska sprawdzania poprawności (354)
  • Implementowanie funkcji pośrednich (356)
  • Podsumowanie (359)
  • W następnym rozdziale (359)

Rozdział 17. Zaawansowane zagadnienia związane z bazą danych MongoDB (361)

  • Dodawanie indeksów (361)
  • Użycie ograniczonych kolekcji (364)
  • Stosowanie replikacji (365)
  • Implementowanie tworzenia segmentów danych (369)
  • Implementowanie magazynu GridFS (377)
  • Naprawianie bazy danych MongoDB (383)
  • Tworzenie kopii zapasowej bazy danych MongoDB (384)
  • Podsumowanie (385)
  • W następnym rozdziale (385)

CZĘŚĆ IV UŻYCIE MODUŁU EXPRESS DO USPRAWNIENIA PRACY (387)

Rozdział 18. Implementacja komponentu Express w środowisku Node.js (389)

  • Wprowadzenie do komponentu Express (389)
  • Konfigurowanie tras (392)
  • Użycie obiektów Request (397)
  • Użycie obiektów Response (398)
  • Implementowanie mechanizmu szablonów (406)
  • Podsumowanie (411)
  • W następnym rozdziale (411)

Rozdział 19. Implementacja funkcji pośrednich komponentu Express (413)

  • Funkcje pośrednie (413)
  • Użycie funkcji pośredniej query (416)
  • Udostępnianie plików statycznych (416)
  • Obsługa danych treści żądania POST (418)
  • Wysyłanie i odbieranie informacji cookie (419)
  • Implementowanie sesji (421)
  • Stosowanie podstawowego uwierzytelniania HTTP (423)
  • Implementowanie uwierzytelniania sesji (424)
  • Tworzenie niestandardowych funkcji pośrednich (427)
  • Podsumowanie (428)
  • W następnym rozdziale (428)

CZĘŚĆ V KOMPONENT ANGULARJS (429)

Rozdział 20. Wprowadzenie do komponentu AngularJS (431)

  • Dlaczego komponent AngularJS? (431)
  • Komponent AngularJS (433)
  • Przegląd cyklu życia aplikacji AngularJS (436)
  • Integrowanie komponentu AngularJS z istniejącym kodem JavaScript i jQuery (437)
  • Dodawanie komponentu AngularJS do środowiska Node.js (438)
  • Inicjowanie komponentu AngularJS w dokumencie HTML (438)
  • Użycie globalnych interfejsów API (439)
  • Tworzenie prostej aplikacji AngularJS (441)
  • Podsumowanie (445)
  • W następnym rozdziale (445)

Rozdział 21. Moduły komponentu AngularJS i wstrzykiwanie zależności (447)

  • Przegląd modułów i wstrzykiwania zależności (447)
  • Definiowanie modułów AngularJS (448)
  • Implementowanie wstrzykiwania zależności (452)
  • Podsumowanie (454)
  • W następnym rozdziale (454)

Rozdział 22. Implementowanie zasięgu jako modelu danych (455)

  • Zasięgi (455)
  • Implementowanie hierarchii zasięgów (461)
  • Emitowanie i rozgłaszanie zdarzeń (463)
  • Podsumowanie (467)
  • W następnym rozdziale (468)

Rozdział 23. Tworzenie widoków za pomocą szablonów środowiska AngularJS (469)

  • Szablony (469)
  • Użycie wyrażeń (470)
  • Użycie filtrów (473)
  • Tworzenie filtrów niestandardowych (479)
  • Podsumowanie (482)
  • W następnym rozdziale (483)

Rozdział 24. Implementowanie dyrektyw w widokach aplikacji AngularJS (485)

  • Dyrektywy (485)
  • Użycie wbudowanych dyrektyw (486)
  • Tworzenie własnych dyrektyw do rozszerzania kodu HTML (500)
  • Podsumowanie (509)
  • W następnym rozdziale (509)

Rozdział 25. Implementowanie usług środowiska AngularJS w aplikacjach internetowych (511)

  • Usługi środowiska AngularJS (511)
  • Użycie wbudowanych usług (512)
  • Tworzenie usług niestandardowych (527)
  • Podsumowanie (529)
  • W następnym rozdziale (529)

CZĘŚĆ VI TWORZENIE PRAKTYCZNYCH KOMPONENTÓW APLIKACJI INTERNETOWYCH (531)

Rozdział 26. Dodawanie kont użytkowników do witryny internetowej (533)

  • Używane biblioteki (533)
  • Struktura katalogowa projektu (534)
  • Definiowanie modelu użytkowników (535)
  • Tworzenie serwera (535)
  • Implementowanie tras (537)
  • Implementowanie tras kontrolera użytkowników (538)
  • Implementowanie widoków użytkownika i uwierzytelniania (543)
  • Implementowanie modułu i kontrolera środowiska AngularJS (549)
  • Użycie kont społecznościowych jako źródeł uwierzytelniania (549)
  • Podsumowanie (555)
  • W następnym rozdziale (556)

Rozdział 27. Dodawanie wątków komentarzy do stron (557)

  • Używane biblioteki (557)
  • Struktura katalogowa projektu (558)
  • Definiowanie modeli komentarzy, odpowiedzi, zdjęć i stron (559)
  • Tworzenie serwera komentarzy (561)
  • Implementowanie tras do obsługi wyświetlania i dodawania komentarzy (563)
  • Implementowanie tras kontrolerów opartych na modelu (563)
  • Implementowanie widoków komentarzy i zdjęć (569)
  • Implementowanie modułu i kontrolerów środowiska AngularJS do obsługi widoków komentarzy (576)
  • Inicjowanie aplikacji (581)
  • Podsumowanie (583)
  • W następnym rozdziale (583)

Rozdział 28. Tworzenie własnego koszyka zakupów (585)

  • Opis projektu (585)
  • Używane biblioteki (586)
  • Struktura katalogowa projektu (586)
  • Definiowanie modeli klientów, produktów i zamówień (588)
  • Tworzenie serwera koszyka zakupów (592)
  • Implementowanie tras do obsługi żądań dotyczących produktów, koszyka i zamówień (593)
  • Implementowanie tras kontrolera opartego na modelu (594)
  • Implementowanie widoków kasy i koszyka zakupów (598)
  • Implementowanie modułu i kontrolera środowiska AngularJS do obsługi widoków koszyka zakupów (611)
  • Inicjowanie aplikacji (619)
  • Podsumowanie (621)
  • W następnym rozdziale (621)

Rozdział 29. Tworzenie interaktywnych komponentów aplikacji Web 2.0 (623)

  • Opis projektu (623)
  • Używane biblioteki (624)
  • Struktura katalogowa projektu (624)
  • Definiowanie modelu projektu (626)
  • Tworzenie serwera aplikacji (626)
  • Implementowanie tras do obsługi widoków (627)
  • Implementowanie widoku z kartami (628)
  • Implementowanie widoku usługi pogodowej (633)
  • Implementowanie elementów, które można przeciągać (637)
  • Implementowanie dostępu do danych dynamicznych (641)
  • Inicjowanie aplikacji (646)
  • Podsumowanie (648)

Skorowidz (651)

  • Tytuł: Node.js, MongoDB, AngularJS. Kompendium wiedzy
  • Autor: Brad Dayley
  • Tytuł oryginału: Node.js, MongoDB, and AngularJS Web Development (Developer's Library)
  • Tłumaczenie: Piotr Pilch
  • ISBN: 978-83-283-0112-2, 9788328301122
  • Data wydania: 2015-03-11
  • Format: Ebook
  • Identyfikator pozycji: nodekw
  • Wydawca: Helion