Node_js_w_praktyce_Tworzenie_skalowalnych_aplikacji_sieciowych_nodewp.pdf

(2692 KB) Pobierz
Tytł oryginału: Practical Node.js: Building Real-world Scalable Web Apps
Tłumaczenie: Joanna Zatorska
ISBN: 978-83-283-1085-8
Original edition copyright © 2014 by Azat Mardan.
All rights reserved.
Polish edition copyright © 2015 by HELION SA.
All rights reserved.
All rights reserved. No part of this book may be reproduced or transmitted in any form or by any means,
electronic or mechanical, including photocopying, recording or by any information storage retrieval system,
without permission from the Publisher.
Wszelkie prawa zastrzeżone. Nieautoryzowane rozpowszechnianie całości lub fragmentu niniejszej
publikacji w jakiejkolwiek postaci jest zabronione. Wykonywanie kopii metodą kserograficzną,
fotograficzną, a także kopiowanie książki na nośniku filmowym, magnetycznym lub innym powoduje
naruszenie praw autorskich niniejszej publikacji.
Wszystkie znaki występujące w tekście są zastrzeżonymi znakami firmowymi bądź towarowymi ich
właścicieli.
Autor oraz Wydawnictwo HELION dołożyli wszelkich starań, by zawarte w tej książce informacje były
kompletne i rzetelne. Nie biorą jednak żadnej odpowiedzialności ani za ich wykorzystanie, ani za związane
z tym ewentualne naruszenie praw patentowych lub autorskich. Autor oraz Wydawnictwo HELION nie
ponoszą również żadnej odpowiedzialności za ewentualne szkody wynikłe z wykorzystania informacji
zawartych w książce.
Wydawnictwo HELION
ul. Kościuszki 1c, 44-100 GLIWICE
tel. 32 231 22 19, 32 230 98 63
e-mail:
helion@helion.pl
WWW:
http://helion.pl
(księgarnia internetowa, katalog książek)
Drogi Czytelniku!
Jeżeli chcesz ocenić tę książkę, zajrzyj pod adres
http://helion.pl/user/opinie/nodewp
Możesz tam wpisać swoje uwagi, spostrzeżenia, recenzję.
Pliki z przykładami omawianymi w książce można znaleźć pod adresem:
ftp://ftp.helion.pl/przyklady/nodewp.zip
Printed in Poland.
Kup książkę
Poleć książkę
Oceń książkę
Księgarnia internetowa
Lubię to! » Nasza społeczność
Spis tre ci
O autorze ........................................................................................................ 11
O recenzencie technicznym ............................................................................. 13
Podzi kowania ................................................................................................ 15
Wst p .............................................................................................................. 17
Rozdzia 1. Instalowanie Node.js i podstawowe zagadnienia .......................................... 21
Instalowanie Node.js i menedżera NPM ................................................................................. 21
Gotowe instalatory ............................................................................................................... 22
Instalowanie za pomocą HomeBrew lub MacPorts ........................................................ 22
Instalowanie z wykorzystaniem pliku tar ......................................................................... 23
Instalowanie bez użycia sudo ............................................................................................. 24
Instalowanie z repozytorium Git ....................................................................................... 24
Instalacja kilku wersji z wykorzystaniem Nave ............................................................... 25
Instalacja kilku wersji
z wykorzystaniem menedżera Node Version Manager (NVM) ................................. 26
Alternatywne systemy służące do instalowania kilku wersji ......................................... 26
Weryfikacja instalacji .......................................................................................................... 26
Konsola Node.js (REPL) ..................................................................................................... 27
Uruchamianie skryptów Node.js .............................................................................................. 28
Podstawy i składnia Node.js ...................................................................................................... 28
Typowanie słabe ................................................................................................................... 28
Buffer — typ danych Node.js ............................................................................................. 29
Notacja literałów obiektowych ........................................................................................... 29
Funkcje .................................................................................................................................. 29
Tablice ................................................................................................................................... 31
Natura prototypowa ............................................................................................................ 31
Konwencje ............................................................................................................................. 32
Zakres globalny w Node.js i słowa zarezerwowane ......................................................... 33
__dirname a process.cwd .................................................................................................... 35
Funkcje pomocnicze interfejsu programistycznego aplikacji przeglądarki ....................... 35
Kup książkę
Poleć książkę
SPIS TRE CI
Podstawowe moduły Node.js ............................................................................................. 36
Przydatne narzędzia Node.js .............................................................................................. 37
Odczyt i zapisywanie plików z systemu plików w Node.js ............................................ 38
Strumieniowe przesyłanie danych w Node.js .................................................................. 38
Instalowanie modułów Node.js za pomocą NPM ........................................................... 38
Poskramianie wywołań zwrotnych w Node.js ................................................................. 39
Tworzenie serwera „Witaj, świecie” za pomocą modułu HTTP Node.js .................... 40
Debugowanie programów Node.js .......................................................................................... 41
Debuger Node.js ................................................................................................................... 41
Debugowanie za pomocą narzędzia Node Inspector ...................................................... 42
Środowiska IDE dla Node.js oraz edytory kodu .................................................................... 44
Obserwowanie zmian w plikach ............................................................................................... 46
Podsumowanie ............................................................................................................................ 48
Rozdzia 2. Wykorzystanie Express.js 4 do tworzenia aplikacji WWW Node.js ................. 49
Czym jest Express.js? .................................................................................................................. 49
Jak działa Express.js? .................................................................................................................. 52
Instalowanie Express.js .............................................................................................................. 52
Wersja Express.js .................................................................................................................. 53
Express.js Generator ............................................................................................................ 53
Lokalna instalacja Express.js .............................................................................................. 54
Tworzenie szkieletu aplikacji z wykorzystaniem Express.js ................................................. 56
Interfejs wiersza poleceń Express.js ................................................................................... 57
Trasy w Express.js ................................................................................................................ 59
Oprogramowanie pośredniczące jako kręgosłup Express.js .......................................... 60
Konfiguracja aplikacji Express.js ....................................................................................... 60
Jade to Haml w Express.js (Node.js) ................................................................................. 60
Podsumowanie tworzenia szkieletów aplikacji ................................................................ 61
Omówienie projektu Blog ......................................................................................................... 61
Przesyłanie danych .............................................................................................................. 62
Przykład „Witaj, świecie” w Express.js .................................................................................... 64
Tworzenie folderów ............................................................................................................. 64
Inicjalizacja NPM i plik package.json ............................................................................... 65
Deklarowanie zależności — npm install ........................................................................... 66
Plik app.js .............................................................................................................................. 67
Spotkanie z Jade — jeden szablon, by wszystkimi rządzić ............................................. 70
Uruchamianie aplikacji „Witaj, świecie” .......................................................................... 71
Podsumowanie ............................................................................................................................ 71
Rozdzia 3. Wykorzystanie technik TDD i BDD w Node.js z u yciem platformy Mocha ..... 73
Instalowanie i zrozumienie platformy Mocha ....................................................................... 73
Zrozumieć haki platformy Mocha ..................................................................................... 75
TDD z wykorzystaniem modułu assert ................................................................................... 76
Moduł Chai assert ................................................................................................................ 78
BDD z wykorzystaniem Expect.js ............................................................................................ 79
Składnia Expect.js ................................................................................................................ 80
6
Kup książkę
Poleć książkę
SPIS TRE CI
Projekt — pisanie pierwszego testu BDD dla aplikacji Blog ................................................ 80
Umieszczanie konfiguracji w pliku Makefile ................................................................... 82
Podsumowanie ............................................................................................................................ 84
Rozdzia 4. Silniki szablonów — Jade i Handlebars .......................................................... 85
Składnia i funkcje Jade ............................................................................................................... 85
Znaczniki ............................................................................................................................... 86
Zmienne (Locals) ................................................................................................................. 86
Atrybuty ................................................................................................................................ 86
Literały ................................................................................................................................... 87
Tekst ....................................................................................................................................... 88
Skrypt i bloki stylów ............................................................................................................ 88
Kod JavaScript ...................................................................................................................... 88
Komentarze ........................................................................................................................... 89
Warunki (if) .......................................................................................................................... 89
Iteracje (pętle each) .............................................................................................................. 90
Filtry ....................................................................................................................................... 90
Interpolacja ........................................................................................................................... 90
Case ........................................................................................................................................ 91
Domieszki ............................................................................................................................. 91
Include ................................................................................................................................... 92
Extend .................................................................................................................................... 92
Samodzielne użycie Jade ............................................................................................................ 93
Składnia Handlebars .................................................................................................................. 96
Zmienne ................................................................................................................................ 96
Iteracja (each) ....................................................................................................................... 97
Niecytowany wynik ............................................................................................................. 97
Warunki (if) .......................................................................................................................... 98
Unless .................................................................................................................................... 98
With ....................................................................................................................................... 99
Komentarze ........................................................................................................................... 99
Własne funkcje pomocnicze ............................................................................................. 100
Włączenia (szablony częściowe) ...................................................................................... 101
Samodzielne użycie Handlebars ............................................................................................. 101
Wykorzystanie Jade i Handlebars w Express.js 4 ................................................................. 103
Jade i Express.js .................................................................................................................. 104
Handlebars i Express.js ..................................................................................................... 104
Projekt — dodanie szablonów Jade do aplikacji Blog ......................................................... 105
layout.jade ........................................................................................................................... 105
index.jade ............................................................................................................................ 107
article.jade ........................................................................................................................... 109
login.jade ............................................................................................................................. 109
post.jade ............................................................................................................................... 110
admin.jade ........................................................................................................................... 111
Podsumowanie .......................................................................................................................... 113
7
Kup książkę
Poleć książkę
Zgłoś jeśli naruszono regulamin