Sebastian Springer

Node.js

Das umfassende Handbuch. 5. Auflage
eBook (epub), 989 Seiten
EAN 9783367112913
Veröffentlicht November 2025
Verlag/Hersteller Rheinwerk eBooks

Auch erhältlich als:

Buch (Hardcover)
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

Technik
Sie können dieses eBook zum Beispiel mit den folgenden Geräten lesen:
• tolino Reader 
Laden Sie das eBook direkt über den Reader-Shop auf dem tolino herunter oder übertragen Sie das eBook auf Ihren tolino mit einer kostenlosen Software wie beispielsweise Adobe Digital Editions. 
• Sony Reader & andere eBook Reader 
Laden Sie das eBook direkt über den Reader-Shop herunter oder übertragen Sie das eBook mit der kostenlosen Software Sony READER FOR PC/Mac oder Adobe Digital Editions auf ein Standard-Lesegeräte. 
• Tablets & Smartphones 
Möchten Sie dieses eBook auf Ihrem Smartphone oder Tablet lesen, finden Sie hier unsere kostenlose Lese-App für iPhone/iPad und Android Smartphone/Tablets. 
• PC & Mac 
Lesen Sie das eBook direkt nach dem Herunterladen mit einer kostenlosen Lesesoftware, beispielsweise Adobe Digital Editions, Sony READER FOR PC/Mac oder direkt über Ihre eBook-Bibliothek in Ihrem Konto unter „Meine eBooks“ -  „online lesen“.
 
Bitte beachten Sie, dass die Kindle-Geräte das Format nicht unterstützen und dieses eBook somit nicht auf Kindle-Geräten lesbar ist.
Barrierefreiheit
Alternativbeschreibungen
Kurze Alternativtexte

Navigation
Inhaltsverzeichnis mit Links
Hersteller
Libri GmbH
Friedensallee 273

DE - 22763 Hamburg

E-Mail: GPSR@libri.de

Website: www.libri.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