Sebastian Springer

Node.js

Das umfassende Handbuch. Serverseitige Web-Applikationen mit JavaScript entwickeln. Aktuell zu Version 24. 5. Auflage. 24,3 cm / 18,5 cm / 5,9 cm ( B/H/T )
Buch (Hardcover), 989 Seiten
EAN 9783367108343
Veröffentlicht November 2025
Verlag/Hersteller Rheinwerk Verlag GmbH

Auch erhältlich als:

eBook (epub)
49,90
49,90 inkl. MwSt.
Teilen
Beschreibung

Meistern Sie Node.js, die führende Plattform für serverseitiges JavaScript! In diesem umfassenden Handbuch begleitet Sie Sebastian Springer von den ersten Grundlagen bis zu fortgeschrittenen Techniken Schritt für Schritt. Anhand zahlreicher praxisnaher Beispiele lernen Sie, wie Sie robuste und skalierbare Webanwendungen entwickeln. Finden Sie Antworten auf Ihre täglichen Herausforderungen und profitieren Sie von Expertenwissen und bewährten Lösungen. Die fünfte, umfassend aktualisierte und erweiterte Auflage stellt sicher, dass Sie mit den neuesten Entwicklungen arbeiten. Aus dem Inhalt: - Grundlagen und Installation - Node.js-Module verwenden - Node Package Manager (z. B. NPM, Yarn) - Erfolgreich arbeiten mit Nest.js - Asynchrone Programmierung - Anbindung von Datenbanken - GraphQL nutzen - Performance, Testing, Qualitätssicherung - Skalierbarkeit und Deployment - Deno und Bun kennenlernen - Node.js und KI - Verschlüsselung
Die Fachpresse zur Vorauflage:
regetskcob.blog: 'Ob zur Weiterbildung oder als Nachschlagewerk, dieses Buch gehört in das Bücherregal eines jeden Webentwicklers, oder jeder Webentwicklerin. Mit dem Wissen aus diesem Werk ist ein Application-Server mit Datenbankanbindung und ReST API im Nu erstellt.'

Portrait

Sebastian Springer ist JavaScript-Engineer bei MaibornWolff. Als Dozent lehrt er JavaScript an der Technischen Hochschule Rosenheim. Er publiziert regelmäßig in Fachzeitschriften, schreibt Fachbücher zu Node.js und ist ein gefragter Speaker auf allen wichtigen JavaScript- und Webentwickler-Konferenzen. Sebastian Springer bietet auch Seminare zu JavaScript und Node.js an und ist Trainer für mehrere Rheinwerk Webinare.

Inhaltsverzeichnis


Materialien zum Buch ... 23
Vorwort ... 25
1. Grundlagen ... 29
1.1 ... Die Geschichte von Node.js ... 31
1.2 ... Die Organisation von Node.js ... 36
1.3 ... Versionierung von Node.js ... 37
1.4 ... Stärken von Node.js ... 39
1.5 ... Einsatzgebiete von Node.js ... 40
1.6 ... Die wichtigsten Merkmale von Node.js ... 41
1.7 ... Das Herzstück -- die V8-Engine ... 42
1.8 ... Bibliotheken um die Engine ... 49
1.9 ... Zusammenfassung ... 55
2. Installation ... 57
2.1 ... Node.js-Versionierung ... 58
2.2 ... Installation mit dem Installer ... 60
2.3 ... Installation über den Paketmanager des Systems ... 62
2.4 ... Einsatz eines Version-Managers ... 63
2.5 ... Node.js in einem Container ausführen ... 68
2.6 ... Zusammenfassung ... 77
3. Ein erstes Beispiel ... 79
3.1 ... REPL -- die interaktive Shell von Node.js ... 79
3.2 ... Die erste Applikation ... 88
3.3 ... Debuggen von Node.js-Applikationen ... 99
3.4 ... Entwicklungswerkzeug 'nodemon' ... 110
3.5 ... Node.js im Watch-Modus ... 111
3.6 ... Zusammenfassung ... 114
4. Node.js-Module ... 117
4.1 ... Modularer Aufbau ... 117
4.2 ... Kernmodule ... 120
4.3 ... JavaScript-Modulsysteme ... 146
4.4 ... Eigene Module erzeugen und verwenden ... 151
4.5 ... Module dynamisch laden ... 164
4.6 ... Zusammenfassung ... 165
5. HTTP ... 167
5.1 ... Das HTTP-Protokoll ... 167
5.2 ... Der Webserver ... 168
5.3 ... Node.js als HTTP-Client ... 203
5.4 ... Sichere Kommunikation mit HTTPS ... 211
5.5 ... HTTP/2 ... 213
5.6 ... Zusammenfassung ... 224
6. Express ... 227
6.1 ... Aufbau ... 227
6.2 ... Installation ... 229
6.3 ... Grundlagen ... 230
6.4 ... Architektur einer Express-Applikation ... 234
6.5 ... Filmdatenbank ... 237
6.6 ... Middleware ... 247
6.7 ... Dynamische Routen -- Löschen von Datensätzen ... 254
6.8 ... Anlegen und Bearbeiten von Datensätzen -- Zugriff auf den Request-Body ... 257
6.9 ... Validierung von Eingaben mit Zod ... 265
6.10 ... Express 5 ... 269
6.11 ... HTTPS und HTTP/2 ... 271
6.12 ... Zusammenfassung ... 273
7. Template-Engines ... 277
7.1 ... Template-Engines in der Praxis -- Pug ... 278
7.2 ... Handlebars ... 294
7.3 ... Zusammenfassung und Ausblick ... 299
8. Anbindung von Datenbanken ... 301
8.1 ... Node.js und relationale Datenbanken ... 302
8.2 ... Node.js und nicht relationale Datenbanken ... 326
8.3 ... Zusammenfassung ... 342
9. Authentifizierung und Sessionhandling ... 345
9.1 ... Passport ... 345
9.2 ... Setup und Konfiguration ... 346
9.3 ... Anmeldung an der Applikation ... 350
9.4 ... Zugriff auf Ressourcen ... 360
9.5 ... Externer Identity Provider ... 372
9.6 ... Zusammenfassung ... 378
10. REST-Server ... 381
10.1 ... REST -- eine kurze Einführung und wie es in Webapplikationen verwendet wird ... 381
10.2 ... Zugriff auf die Applikation ... 382
10.3 ... Anpassungen an der Applikationsstruktur ... 384
10.4 ... Lesende Anfragen ... 385
10.5 ... Schreibende Anfragen ... 396
10.6 ... Authentifizierung mit JSON Web Tokens ... 407
10.7 ... Einbindung eines externen Identity Providers ... 415
10.8 ... OpenAPI-Spezifikation -- Dokumentation mit Swagger ... 419
10.9 ... Validierung ... 424
10.10 ... Zusammenfassung ... 430
11. GraphQL ... 433
11.1 ... GraphQL-Bibliotheken ... 434
11.2 ... Integration in Express ... 435
11.3 ... Daten über die Schnittstelle auslesen ... 440
11.4 ... Schreibende Zugriffe auf die GraphQL-Schnittstelle ... 446
11.5 ... Mit Subscriptions Updates in Echtzeit erhalten ... 453
11.6 ... Authentifizierung für die GraphQL-Schnittstelle ... 457
11.7 ... Zusammenfassung ... 462
12. Echtzeit-Webapplikationen ... 465
12.1 ... Die Beispielapplikation ... 466
12.2 ... Setup ... 466
12.3 ... WebSockets ... 473
12.4 ... Node.js als WebSocket-Client ... 487
12.5 ... Socket.IO ... 488
12.6 ... Zusammenfassung ... 494
13. Typsichere Applikationen in Node.js ... 497
13.1 ... Typsysteme für Node.js ... 498
13.2 ... Werkzeuge und Konfiguration ... 501
13.3 ... TypeScript-Grundlagen ... 506
13.4 ... Klassen ... 512
13.5 ... Interfaces ... 515
13.6 ... Type Aliases in TypeScript ... 517
13.7 ... Generics ... 519
13.8 ... TypeScript im Einsatz in einer Node.js-Applikation ... 520
13.9 ... Native TypeScript-Unterstützung in Node.js ... 523
13.10 ... Zusammenfassung ... 525
14. Webapplikationen mit Nest ... 527
14.1 ... Installation und erste Schritte mit Nest ... 528
14.2 ... Die Nest CLI ... 530
14.3 ... Struktur der Applikation ... 534
14.4 ... Module -- logische Einheiten im Quellcode ... 536
14.5 ... Controller -- die Endpunkte einer Applikation ... 539
14.6 ... Providers -- die Businesslogik der Applikation ... 543
14.7 ... Validierung ... 548
14.8 ... Zugriff auf Datenbanken ... 551
14.9 ... Dokumentation der Endpunkte mit OpenAPI ... 559
14.10 ... Authentifizierung ... 563
14.11 ... Ausblick: Testen in Nest ... 571
14.12 ... Zusammenfassung ... 574
15. Node für Kommandozeilenwerkzeuge ... 577
15.1 ... Grundlagen ... 577
15.2 ... Der Aufbau einer Kommandozeilenapplikation ... 580
15.3 ... Zugriff auf Ein- und Ausgabe ... 585
15.4 ... Werkzeuge ... 594
15.5 ... Signale ... 605
15.6 ... Exit Codes ... 608
15.7 ... Zusammenfassung ... 609
16. Asynchrone Programmierung ... 611
16.1 ... Externe Kommandos mit dem 'child-process'-Modul asynchron ausführen ... 611
16.2 ... Node.js-Kindprozesse erzeugen mit 'fork' ... 620
16.3 ... Das 'cluster'-Modul ... 626
16.4 ... Worker-Threads ... 635
16.5 ... Zusammenfassung ... 640
17. Streams ... 643
17.1 ... Einleitung ... 643
17.2 ... Readable Streams ... 647
17.3 ... Writable Streams ... 660
17.4 ... Duplex-Streams ... 668
17.5 ... Transform-Streams ... 672
17.6 ... Web Streams API ... 674
17.7 ... Zusammenfassung ... 683
18. Arbeiten mit Dateien ... 685
18.1 ... Synchrone und asynchrone Funktionen ... 685
18.2 ... Existenz von Dateien ... 687
18.3 ... Dateien lesen ... 688
18.4 ... Fehlerbehandlung ... 693
18.5 ... In Dateien schreiben ... 695
18.6 ... Verzeichnisoperationen ... 699
18.7 ... Weiterführende Operationen ... 702
18.8 ... Zusammenfassung ... 710
19. Paketmanager ... 713
19.1 ... Die häufigsten Operationen ... 714
19.2 ... Weiterführende Operationen ... 733
19.3 ... Werkzeuge für NPM ... 744
19.4 ... Corepack ... 748
19.5 ... Yarn ... 749
19.6 ... pnpm ... 750
19.7 ... Zusammenfassung ... 751
20. Qualitätssicherung ... 753
20.1 ... Styleguides ... 754
20.2 ... Linter ... 756
20.3 ... Prettier ... 762
20.4 ... PMD CPD ... 763
20.5 ... Husky ... 766
20.6 ... Zusammenfassung ... 767
21. Testing ... 769
21.1 ... Unittesting ... 769
21.2 ... Assertion Testing ... 772
21.3 ... Der Node Test Runner ... 778
21.4 ... Vitest ... 781
21.5 ... Praktisches Beispiel von Unittests mit 'Vitest' ... 792
21.6 ... Umgang mit Abhängigkeiten -- Mocking ... 799
21.7 ... Zusammenfassung ... 802
22. Sicherheitsaspekte ... 803
22.1 ... 'filter input' und 'escape output' ... 804
22.2 ... Absicherung des Servers ... 807
22.3 ... NPM-Sicherheit ... 829
22.4 ... Schutz des Clients ... 833
22.5 ... Das Node.js Permission System ... 838
22.6 ... Zusammenfassung ... 840
23. Skalierbarkeit und Deployment ... 843
23.1 ... Vorbereitung für die Produktion ... 843
23.2 ... Deployment-Grundlagen und -Strategien ... 849
23.3 ... Die Anwendung am Laufen halten und überwachen ... 860
23.4 ... Skalierung ... 864
23.5 ... Zusammenfassung ... 872
24. Performance ... 873
24.1 ... YAGNI -- You Ain't Gonna Need It ... 873
24.2 ... CPU ... 874
24.3 ... Zeitmessung in Node.js ... 877
24.4 ... Arbeitsspeicher ... 882
24.5 ... Netzwerk ... 889
24.6 ... Zusammenfassung ... 893
25. JavaScript Runtimes ... 895
25.1 ... Deno ... 895
25.2 ... Bun ... 916
25.3 ... Zusammenfassung ... 925
26. Künstliche Intelligenz mit Node.js nutzen ... 927
26.1 ... Überblick über Generative AI ... 927
26.2 ... LLMs nutzen ... 931
26.3 ... Ein Chatbot auf der Kommandozeile ... 939
26.4 ... Multimodale LLMs ... 942
26.5 ... Modulare Applikationen mit LangChain ... 944
26.6 ... Das Model Context Protocol ... 953
26.7 ... Zusammenfassung ... 964
Index ... 965

Hersteller
Rheinwerk Verlag GmbH
Rheinwerkallee 4

DE - 53227 Bonn

E-Mail: Info@rheinwerk-verlag.de

Das könnte Sie auch interessieren

Katharina Zweig
Weiß die KI, dass sie nichts weiß?
eBook (epub)
Sofort lieferbar (Download)
16,99
Ben Aaronovitch
Ein weißer Schwan in Tabernacle Street
eBook (epub)
Sofort lieferbar (Download)
9,99
Roberto Simanowski
Sprachmaschinen
eBook (epub)
Sofort lieferbar (Download)
19,99
Yuval Noah Harari
NEXUS
eBook (epub)
Sofort lieferbar (Download)
26,99
Ruth Ware
Zero Days
eBook (epub)
Sofort lieferbar (Download)
12,99
Max Tegmark
Leben 3.0
eBook (epub)
Sofort lieferbar (Download)
14,99
Ingo Dachwitz
Digitaler Kolonialismus
eBook (epub)
Sofort lieferbar (Download)
21,99
Marc Elsberg
ZERO - Sie wissen, was du tust
eBook (epub)
Sofort lieferbar (Download)
10,99
Sibylle Berg
RCE
eBook (epub)
Sofort lieferbar (Download)
12,99
Sofort lieferbar (Download)
12,99
Ernest Cline
Ready Player One
eBook (epub)
Sofort lieferbar (Download)
8,99
Marc Meller
Das Smartphone
eBook (epub)
Sofort lieferbar (Download)
14,99
Ernest Cline
Ready Player Two
eBook (epub)
Sofort lieferbar (Download)
12,99
Neal Stephenson
Snow Crash
eBook (epub)
Sofort lieferbar (Download)
14,99
Dirk Becker
Einstieg in Linux Mint 22
eBook (epub)
Sofort lieferbar (Download)
29,90
Annekathrin Kohout
Hyperreaktiv
eBook (epub)
Sofort lieferbar (Download)
15,99
Inga Strümke
Künstliche Intelligenz
eBook (epub)
Sofort lieferbar (Download)
24,90
Miriam Meckel
Alles überall auf einmal
eBook (epub)
Sofort lieferbar (Download)
4,99
Sofort lieferbar (Download)
21,99
Katharina Zweig
Ein Algorithmus hat kein Taktgefühl
eBook (epub)
Sofort lieferbar (Download)
9,99
Matthias Matting
Tolino shine - das inoffizielle Handbuch.
eBook (epub)
Sofort lieferbar (Download)
2,99
Sofort lieferbar (Download)
0,00
Markus Widl
Microsoft 365 Copilot
eBook (epub)
Sofort lieferbar (Download)
29,90
Michael Kofler
Linux
eBook (pdf)
Sofort lieferbar (Download)
49,90
Paul Zenker
GenAI Security
eBook (epub)
Sofort lieferbar (Download)
34,90
Geert Lovink
In der Plattformfalle
eBook (epub)
Sofort lieferbar (Download)
0,00
Detlef Krause
Webtexten für Nicht-Texter
eBook (epub)
Sofort lieferbar (Download)
15,99
Sofort lieferbar (Download)
0,00
Thomas Brühlmann
Raspberry Pi Pico und Pico W Schnelleinstieg
eBook (epub)
Sofort lieferbar (Download)
14,99
Sofort lieferbar (Download)
19,99
Florian Dalwigk
Python Projekte für die Praxis
eBook (epub)
Sofort lieferbar (Download)
22,99
Sybille Krämer
Der Stachel des Digitalen
eBook (epub)
Sofort lieferbar (Download)
23,99
Gene Kim
Projekt Unicorn
eBook (epub)
Sofort lieferbar (Download)
24,90
Walter Isaacson
Steve Jobs
eBook (epub)
Sofort lieferbar (Download)
12,99
Sofort lieferbar (Download)
0,00
Katharina Zweig
Die KI war's!
eBook (epub)
Sofort lieferbar (Download)
14,99