Warenkorb
if (typeof merkur !== 'undefined') { $(document).ready(merkur.config('COOKIECONSENT').init); }

Node.js

Das umfassende Handbuch. Serverseitige Web-Applikationen mit JavaScript entwickeln

Hochperformante Webanwendungen mit JavaScript



  • Professionelle, echtzeitfähige Anwendungen entwickeln

  • Installation, Grundlagen, Best Practices

  • Debugging, Skalierung, Qualitätssicherung

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
ECMAScript 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

Die Fachpresse zur Vorauflage:

eStrategy: »Ob alltägliche Probleme in der Webentwicklung oder Aufbau von Applikationen - die Lektüre wartet mit Dutzenden Tipps und Lösungen für professionelle Anwender auf.«

Rezension
Die Fachpresse zur Vorauflage:

eStrategy: "Ob alltägliche Probleme in der Webentwicklung oder Aufbau von Applikationen - die Lektüre wartet mit Dutzenden Tipps und Lösungen für professionelle Anwender auf."

Portrait
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.
… weiterlesen
  • Artikelbild-0


  •   Materialien zum Buch ... 21

      Geleitwort ... 23

      Vorwort ... 25

      1.  Grundlagen ... 29

           1.1 ... Die Geschichte von Node.js ... 31

           1.2 ... Die Organisation von Node.js ... 35

           1.3 ... Versionierung von Node.js ... 37

           1.4 ... Vorteile von Node.js ... 38

           1.5 ... Einsatzgebiete von Node.js ... 39

           1.6 ... Das Herzstück -- die V8-Engine ... 40

           1.7 ... Bibliotheken um die Engine ... 47

           1.8 ... Zusammenfassung ... 53

      2.  Installation ... 55

           2.1 ... Installation von Paketen ... 56

           2.2 ... Kompilieren und installieren ... 70

           2.3 ... Node Version Manager ... 73

           2.4 ... Zusammenfassung ... 74

      3.  Ein erstes Beispiel ... 75

           3.1 ... Der interaktive Modus ... 75

           3.2 ... Die erste Applikation ... 81

           3.3 ... Debuggen von Node.js-Applikationen ... 90

           3.4 ... Entwicklungswerkzeug »nodemon« ... 101

           3.5 ... Zusammenfassung ... 102

      4.  Node.js-Module ... 103

           4.1 ... Modularer Aufbau ... 103

           4.2 ... Kernmodule ... 105

           4.3 ... JavaScript-Modulsysteme ... 117

           4.4 ... Eigene Module erzeugen und verwenden ... 121

           4.5 ... Zusammenfassung ... 133

      5.  HTTP ... 135

           5.1 ... Der Webserver ... 135

           5.2 ... Node.js als HTTP-Client ... 157

           5.3 ... Sichere Kommunikation mit HTTPS ... 161

           5.4 ... HTTP/2 ... 163

           5.5 ... Zusammenfassung ... 170

      6.  Express ... 171

           6.1 ... Aufbau ... 171

           6.2 ... Installation ... 172

           6.3 ... Grundlagen ... 174

           6.4 ... Setup ... 176

           6.5 ... Moviedatenbank ... 179

           6.6 ... Middleware ... 187

           6.7 ... Erweitertes Routing -- Löschen von Datensätzen ... 192

           6.8 ... Anlegen und Bearbeiten von Datensätzen -- Body-Parser ... 195

           6.9 ... Express 5 ... 202

           6.10 ... HTTPS und HTTP/2 ... 203

           6.11 ... Zusammenfassung ... 205

      7.  Template-Engines ... 207

           7.1 ... Eine eigene Template-Engine ... 208

           7.2 ... Template-Engines in der Praxis -- Pug ... 210

           7.3 ... Handlebars ... 225

           7.4 ... Zusammenfassung und Ausblick ... 234

      8.  Anbindung von Datenbanken ... 237

           8.1 ... Node.js und relationale Datenbanken ... 238

           8.2 ... Node.js und nicht relationale Datenbanken ... 261

           8.3 ... Zusammenfassung ... 276

      9.  Authentifizierung und Sessionhandling ... 277

           9.1 ... Passport ... 277

           9.2 ... Setup und Konfiguration ... 278

           9.3 ... Anmeldung an der Applikation ... 281

           9.4 ... Zugriff auf Ressourcen ... 289

           9.5 ... Zusammenfassung ... 300

    10.  REST-Server ... 301

           10.1 ... REST -- eine kurze Einführung und wie es in Webapplikationen verwendet wird ... 301

           10.2 ... Zugriff auf die Applikation ... 302

           10.3 ... Anpassungen an der Applikationsstruktur ... 303

           10.4 ... Lesende Anfragen ... 304

           10.5 ... Schreibende Anfragen ... 315

           10.6 ... Authentifizierung mit JWT ... 323

           10.7 ... Swagger ... 328

           10.8 ... GraphQL ... 333

           10.9 ... Zusammenfassung ... 338

    11.  Echtzeit-Webapplikationen ... 339

           11.1 ... Die Beispielapplikation ... 340

           11.2 ... Setup ... 341

           11.3 ... Websockets ... 347

           11.4 ... Socket.IO ... 362

           11.5 ... Zusammenfassung ... 367

    12.  Node auf der Kommandozeile ... 369

           12.1 ... Grundlagen ... 369

           12.2 ... Der Aufbau einer Kommandozeilenapplikation ... 372

           12.3 ... Zugriff auf Ein- und Ausgabe ... 377

           12.4 ... Werkzeuge ... 387

           12.5 ... Signale ... 394

           12.6 ... Exit Codes ... 396

           12.7 ... Zusammenfassung ... 398

    13.  Asynchrone Programmierung ... 399

           13.1 ... Grundlagen asynchroner Programmierung ... 399

           13.2 ... Externe Kommandos asynchron ausführen ... 404

           13.3 ... Node.js-Kindprozesse erzeugen mit »fork« ... 410

           13.4 ... Das »cluster«-Modul ... 414

           13.5 ... Promises in Node.js ... 423

           13.6 ... Async Functions ... 429

           13.7 ... Zusammenfassung ... 430

    14.  RxJS ... 433

           14.1 ... Grundlagen ... 434

           14.2 ... Operatoren ... 440

           14.3 ... Subjects ... 456

           14.4 ... Scheduler ... 458

           14.5 ... Zusammenfassung ... 459

    15.  Streams ... 461

           15.1 ... Einleitung ... 461

           15.2 ... Readable Streams ... 464

           15.3 ... Writable Streams ... 476

           15.4 ... Duplex-Streams ... 484

           15.5 ... Transform-Streams ... 486

           15.6 ... Gulp ... 488

           15.7 ... Zusammenfassung ... 490

    16.  Arbeiten mit Dateien ... 491

           16.1 ... Synchrone und asynchrone Funktionen ... 491

           16.2 ... Existenz von Dateien ... 493

           16.3 ... Dateien lesen ... 494

           16.4 ... Fehlerbehandlung ... 499

           16.5 ... In Dateien schreiben ... 500

           16.6 ... Verzeichnisoperationen ... 504

           16.7 ... Weiterführende Operationen ... 507

           16.8 ... Zusammenfassung ... 512

    17.  Socket-Server ... 513

           17.1 ... Unix-Sockets ... 514

           17.2 ... Windows Pipes ... 521

           17.3 ... TCP-Sockets ... 522

           17.4 ... UDP-Sockets ... 530

           17.5 ... Zusammenfassung ... 534

    18.  Package Manager ... 535

           18.1 ... Die häufigsten Operationen ... 536

           18.2 ... Weiterführende Operationen ... 547

           18.3 ... Werkzeuge für NPM ... 554

           18.4 ... Yarn ... 557

           18.5 ... Zusammenfassung ... 558

    19.  Qualitätssicherung ... 561

           19.1 ... Styleguides ... 562

           19.2 ... Linter ... 563

           19.3 ... Prettier ... 568

           19.4 ... PMD CPD ... 569

           19.5 ... Plato ... 572

           19.6 ... Zusammenfassung ... 574

    20.  Testing ... 575

           20.1 ... Unittesting ... 575

           20.2 ... Assertion Testing ... 578

           20.3 ... Jasmine ... 584

           20.4 ... »nodeunit« ... 592

           20.5 ... Praktisches Beispiel von Unittests mit »nodeunit« ... 597

           20.6 ... Zusammenfassung ... 602

    21.  Sicherheitsaspekte ... 605

           21.1 ... »filter input« und »escape output« ... 606

           21.2 ... Absicherung des Servers ... 609

           21.3 ... NPM-Sicherheit ... 627

           21.4 ... Schutz des Clients ... 631

           21.5 ... Zusammenfassung ... 635

    22.  Skalierbarkeit und Deployment ... 637

           22.1 ... Deployment ... 637

           22.2 ... Toolunterstützung ... 646

           22.3 ... Skalierung ... 654

           22.4 ... »pm2« -- Prozessmanagement ... 664

           22.5 ... Docker ... 665

           22.6 ... Zusammenfassung ... 667

    23.  Microservices mit Node.js ... 669

           23.1 ... Grundlagen ... 669

           23.2 ... Architektur ... 672

           23.3 ... Die Infrastruktur ... 674

           23.4 ... Seneca ... 676

           23.5 ... API-Gateway ... 685

           23.6 ... Express ... 693

           23.7 ... Zusammenfassung ... 703

    24.  Typsichere Applikationen in Node.js ... 705

           24.1 ... Typsysteme für Node.js ... 706

           24.2 ... Werkzeuge und Konfiguration ... 710

           24.3 ... Grundlagen ... 714

           24.4 ... Klassen ... 720

           24.5 ... Interfaces ... 723

           24.6 ... Generics ... 724

           24.7 ... TypeScript im Einsatz in einer Node.js-Applikation ... 726

           24.8 ... Zusammenfassung ... 728

      Index ... 729

In den Warenkorb

Beschreibung

Produktdetails

Einband gebundene Ausgabe
Seitenzahl 747
Erscheinungsdatum 24.08.2018
Sprache Deutsch
ISBN 978-3-8362-6255-2
Reihe Rheinwerk Computing
Verlag Rheinwerk
Maße (L/B/H) 24,4/17,4/4,8 cm
Gewicht 1490 g
Auflage 3. Auflage
Verkaufsrang 60100
Buch (gebundene Ausgabe)
Buch (gebundene Ausgabe)
49,90
49,90
inkl. gesetzl. MwSt.
inkl. gesetzl. MwSt.
Sofort lieferbar Versandkostenfrei
Sofort lieferbar
Versandkostenfrei
In den Warenkorb
PAYBACK Punkte
Vielen Dank für Ihr Feedback!
Entschuldigung, beim Absenden Ihres Feedbacks ist ein Fehler passiert. Bitte versuchen Sie es erneut.
Ihr Feedback zur Seite
Haben Sie alle relevanten Informationen erhalten?
Ihr Feedback ist anonym. Wir nutzen es, um unsere Produktseiten zu verbessern. Bitte haben Sie Verständnis, dass wir Ihnen keine Rückmeldung geben können. Wenn Sie Kontakt mit uns aufnehmen möchten, können Sie sich aber gerne an unseren Kundenservice wenden.

Kundenbewertungen

Es wurden noch keine Bewertungen geschrieben.