Verkauf durch Sack Fachmedien

Springer

Node.js

Das umfassende Handbuch. Serverseitige Webapplikationen mit JavaScript entwickeln

Medium: Buch
ISBN: 978-3-8362-4003-1
Verlag: Rheinwerk Verlag
Erscheinungstermin: 28.05.2016
Lieferfrist: bis zu 10 Tage
Das Buch bietet Ihnen einen guten Einstieg in das Universum von Node.js ab Version 4.2. Node.js ist die am weitesten verbreitete und auch von zahlreichen großen Unternehmen eingesetzte serverseitige JavaScript-Plattform. An einfachen und leicht verständlichen Beispielen werden die Grundlagen erklärt. Professionelle Anwender finden zahlreiche Tipps und Lösungen von alltäglichen Problemen in der Webentwicklung, einen Einblick in neue Vorgehensweisen bei der Entwicklung durch den Einsatz von ECMScript 6 (z.B. Klassen), den Aufbau und die Struktur von Applikationen, Bibliotheken (z.B. Express, Handlebars) und Tools (nvm, nodemon) sowie Hinweise zum Deployment und der Skalierung von Applikationen.

Aus dem Inhalt:

- Grundlagen

- Googles V8-Engine

- Installation von Node.js

- Anpassung und Erweiterung

- Node.js-Module verwenden

- Node Package Manager (NPM)

- Kommunikationsmöglichkeiten

- Asynchrone Programmierung

- Anbindung von Datenbanken

- Qualitätssicherung

- Skalierbarkeit und Deployment

- Server und Client schützen

Produkteigenschaften


  • Artikelnummer: 9783836240031
  • Medium: Buch
  • ISBN: 978-3-8362-4003-1
  • Verlag: Rheinwerk Verlag
  • Erscheinungstermin: 28.05.2016
  • Sprache(n): Deutsch
  • Auflage: 2. Auflage 2016
  • Produktform: Gebunden
  • Seiten: 560
  • Format (B x H): 168 x 240 mm
  • Ausgabetyp: Kein, Unbekannt
  • Nachauflage: 978-3-8362-6255-2

Autoren/Hrsg.

Autoren

Springer, Sebastian

Sebastian Springer arbeitet als Teamleiter bei der Mayflower GmbH in München. Sein Fokus liegt auf der Entwicklung von dynamischen Webapplikationen mit JavaScript und PHP.

Geleitwort des Fachgutachters. 19

  Vorwort. 21

  1.  Grundlagen. 25

       1.1. Die Geschichte von Node.js. 26

       1.2. Vorteile von Node.js. 30

       1.3. Einsatzgebiete von Node.js. 31

       1.4. Das Herzstück -- die V8-Engine. 32

       1.5. Bibliotheken um die Engine. 39

       1.6. Zusammenfassung. 45

  2.  Installation. 47

       2.1. Installation von Paketen. 48

       2.2. Kompilieren und Installieren. 63

       2.3. Zusammenfassung. 65

  3.  Ein erstes Beispiel. 67

       3.1. Der interaktive Modus. 67

       3.2. Die erste Applikation. 72

       3.3. Zusammenfassung. 81

  4.  Node-Module. 83

       4.1. Modularer Ansatz. 83

       4.2. Stabilität. 86

       4.3. Basis-Module. 90

       4.4. Eigene Module erstellen und einbinden. 98

       4.5. Zusammenfassung. 108

  5.  NPM. 109

       5.1. Pakete suchen. 109

       5.2. Werkzeuge für NPM. 126

       5.3. Zusammenfassung. 128

  6.  ECMAScript 6. 129

       6.1. Ein kurzer Rückblick. 129

       6.2. Node.js und ECMAScript 6. 131

       6.3. String- und Array-Erweiterungen. 132

       6.4. Scoping. 133

       6.5. Klassen. 137

       6.6. Template Strings. 140

       6.7. Collections. 142

       6.8. Arrow Functions. 144

       6.9. Generators. 145

       6.10. Promises. 146

       6.11. Symbols. 148

       6.12. Typed Arrays. 150

       6.13. Spread-Operator. 150

       6.14. Rest Parameters. 151

       6.15. Destructuring. 151

       6.16. Binary und Octal Literals. 152

       6.17. Erweiterung der Object Literals. 152

       6.18. 'Object.assign'. 153

       6.19. 'new.target'. 153

       6.20. Zusammenfassung. 153

  7.  Node auf der Kommandozeile. 155

       7.1. Grundlagen. 155

       7.2. Der Aufbau einer Kommandozeilenapplikation. 158

       7.3. Zugriff auf Ein- und Ausgabe. 161

       7.4. Werkzeuge. 169

       7.5. Zusammenfassung. 172

  8.  HTTP. 173

       8.1. Der Webserver. 173

       8.2. HTTP-Client mit Node.js. 187

       8.3. Umgang mit URLs. 196

       8.4. Sichere Kommunikation mit HTTPS. 198

       8.5. Zusammenfassung. 199

  9.  Express.js. 201

       9.1. Aufbau. 201

       9.2. Installation. 203

       9.3. Grundlagen. 204

       9.4. Setup. 206

       9.5. Routing. 215

       9.6. Middleware. 220

       9.7. Zusammenfassung. 227

10.  Template-Engines. 229

       10.1. Eine eigene Template-Engine. 230

       10.2. Template-Engines in der Praxis -- Jade. 231

       10.3. Handlebars. 251

       10.4. Zusammenfassung. 258

11.  REST Server. 259

       11.1. 'GET' -- lesender Zugriff. 261

       11.2. 'POST' -- Anlegen neuer Ressourcen. 265

       11.3. 'PUT' -- Aktualisierung bestehender Daten. 267

       11.4. 'DELETE' -- Löschen vorhandener Daten. 269

       11.5. 'Accept'-Header. 271

       11.6. Zusammenfassung. 273

12.  Single-Page-Webapplikationen mit Express.js und Angular.js. 275

       12.1. Die Aufgabenstellung. 275

       12.2. Setup. 276

       12.3. Die Applikation. 281

       12.4. Zusammenfassung. 299

13.  Echtzeit-Webapplikationen. 301

       13.1. Die Beispielapplikation. 302

       13.2. Setup. 303

       13.3. Websockets. 308

       13.4. Socket.IO. 320

       13.5. Zusammenfassung. 325

14.  Asynchrone Programmierung. 327

       14.1. Grundlagen asynchroner Programmierung. 327

       14.2. Externe Kommandos asynchron ausführen. 332

       14.3. 'fork'. 337

       14.4. Das cluster-Modul. 341

       14.5. Promises in Node.js. 349

       14.6. Zusammenfassung. 353

15.  Streams. 355

       15.1. Einleitung. 355

       15.2. Readable Streams. 358

       15.3. Writable Streams. 369

       15.4. Duplex Streams. 376

       15.5. Transform Streams. 378

       15.6. Gulp. 380

       15.7. Zusammenfassung. 382

16.  Arbeiten mit Dateien. 383

       16.1. Synchrone und asynchrone Funktionen. 383

       16.2. Existenz von Dateien. 384

       16.3. Dateien lesen. 385

       16.4. Fehlerbehandlung. 390

       16.5. In Dateien schreiben. 391

       16.6. Verzeichnisoperationen. 394

       16.7. Weiterführende Operationen. 398

       16.8. Zusammenfassung. 402

17.  Socket-Server. 405

       17.1. UNIX-Sockets. 406

       17.2. Windows Pipes. 413

       17.3. TCP-Sockets. 414

       17.4. UDP-Sockets. 421

       17.5. Zusammenfassung. 426

18.  Anbindung von Datenbanken. 427

       18.1. Node.js und relationale Datenbanken. 428

       18.2. Node.js und nicht relationale Datenbanken. 439

       18.3. Datenbanken und Promises. 449

       18.4. Datenbanken und Streams. 450

       18.5. Zusammenfassung. 451

19.  Qualitätssicherung. 453

       19.1. Unittesting. 453

       19.2. Assertion Testing. 456

       19.3. Jasmine. 459

       19.4. nodeunit. 465

       19.5. Praktisches Beispiel von Unittests mit nodeunit. 470

       19.6. Statische Codeanalyse. 474

       19.7. Node.js Debugger. 482

       19.8. Node Inspector. 487

       19.9. Debugging in der Entwicklungsumgebung. 489

       19.10. Zusammenfassung. 489

20.  Sicherheitsaspekte. 491

       20.1. Filter Input und Escape Output. 492

       20.2. Absicherung des Servers. 494

       20.3. NPM-Sicherheit. 511

       20.4. Schutz des Clients. 514

       20.5. Zusammenfassung. 518

21.  Skalierbarkeit und Deployment. 519

       21.1. Deployment. 519

       21.2. Toolunterstützung. 528

       21.3. Skalierung. 534

       21.4. pm2 -- Prozessmanagement. 543

       21.5. Zusammenfassung. 544

  Index. 545