Node.js - Sebastian Springer

Sebastian Springer

Node.js

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

Auch erhältlich als:

Buch (Hardcover)
49,90
49,90 inkl. MwSt.
Sofort Lieferbar (Download)
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
Rheinwerk Verlag GmbH
Rheinwerkallee 4

DE - 53227 Bonn

E-Mail: Info@rheinwerk-verlag.de

Das könnte Sie auch interessieren

Rita Falk
Apfelstrudel-Alibi
eBook (epub)
Sofort lieferbar (Download)
14,99
Sebastian Fitzek
Der Nachbar
eBook (epub)
Sofort lieferbar (Download)
19,99
Viveca Sten
Lügennebel
eBook (epub)
Sofort lieferbar (Download)
17,99
Simon Beckett
Knochenkälte
eBook (epub)
Sofort lieferbar (Download)
21,99
M. W. Craven
Der Kurator
eBook (epub)
Sofort lieferbar (Download)
9,99
Katja Gloger
Das Versagen
eBook (epub)
Sofort lieferbar (Download)
22,99
Sofort lieferbar (Download)
12,99
Florian Illies
Wenn die Sonne untergeht
eBook (epub)
Sofort lieferbar (Download)
22,99
Saidi Sulilatu
Finanzen ganz einfach
eBook (epub)
Sofort lieferbar (Download)
10,99
Sofort lieferbar (Download)
14,99
Tom Hillenbrand
Verhängnisvoller Champagner
eBook (epub)
Sofort lieferbar (Download)
9,99
Harlan Coben
Ohne ein letztes Wort
eBook (epub)
Sofort lieferbar (Download)
14,99
Karen Sander
Die Tiefe: Versunken
eBook (epub)
Sofort lieferbar (Download)
9,99
Hera Lind
Die stille Heldin
eBook (epub)
Sofort lieferbar (Download)
11,99
Richard David Precht
Angststillstand
eBook (epub)
Sofort lieferbar (Download)
18,99
Fabcaro
Asterix 41
eBook (epub)
Sofort lieferbar (Download)
7,49
Sofort lieferbar (Download)
13,99
Ben Calvin Hary
Perry Rhodan 3350: Der Fall Ragnarök
eBook (epub)
Sofort lieferbar (Download)
2,49
Joshua Tree
Origin - Die Erweckung
eBook (epub)
Sofort lieferbar (Download)
9,99
Mechtild Borrmann
Lebensbande
eBook (epub)
Sofort lieferbar (Download)
18,99
Stephan Schäfer
Jetzt gerade ist alles gut
eBook (epub)
Sofort lieferbar (Download)
17,99
Annette Marie
Alchemie und ein Amaretto
eBook (epub)
Sofort lieferbar (Download)
7,99
Anders De La Motte
Rostiges Grab
eBook (epub)
Download vorbestellbar
5,99
Carmen Korn
In den Scherben das Licht
eBook (epub)
Sofort lieferbar (Download)
19,99
Lenz Koppelstätter
Am Hang des Todes
eBook (epub)
Download vorbestellbar
5,99
Alex Beer
Felix Blom - Mord an der Spree
eBook (epub)
Sofort lieferbar (Download)
14,99
Henrike Engel
Elbnächte. Schatten über St. Pauli
eBook (epub)
Sofort lieferbar (Download)
9,99
Victor Schefé
Zwei, drei blaue Augen
eBook (epub)
Sofort lieferbar (Download)
18,99
Hayley Gelfuso
Das Buch der verlorenen Stunden
eBook (epub)
Sofort lieferbar (Download)
16,99
Louise Penny
Der schwarze Wolf
eBook (epub)
Sofort lieferbar (Download)
19,99
Benedict Jacka
Haus Ashford - Magisches Erbe
eBook (epub)
Sofort lieferbar (Download)
12,99
Sofort lieferbar (Download)
4,99
Cilla Börjlind
Schatten über dem Wald
eBook (epub)
Sofort lieferbar (Download)
14,99
David Szalay
Was nicht gesagt werden kann
eBook (epub)
Sofort lieferbar (Download)
19,99
Lucinda Riley
Die Frauen von Ballymore
eBook (epub)
Sofort lieferbar (Download)
21,99
Ellen Sandberg
Rauhnächte
eBook (epub)
Sofort lieferbar (Download)
18,99