Zum Hauptinhalt springen Zur Suche springen Zur Hauptnavigation springen
Beschreibung

Meistern Sie [...], 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
  • [...]-Module verwenden
  • Node Package Manager (z. B. NPM, Yarn)
  • Erfolgreich arbeiten mit [...]
  • Asynchrone Programmierung
  • Anbindung von Datenbanken
  • GraphQL nutzen
  • Performance, Testing, Qualitätssicherung
  • Skalierbarkeit und Deployment
  • Deno und Bun kennenlernen
  • [...] und KI
  • Verschlüsselung

Die Fachpresse zur Vorauflage:

[...]: '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.'

Meistern Sie [...], 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
  • [...]-Module verwenden
  • Node Package Manager (z. B. NPM, Yarn)
  • Erfolgreich arbeiten mit [...]
  • Asynchrone Programmierung
  • Anbindung von Datenbanken
  • GraphQL nutzen
  • Performance, Testing, Qualitätssicherung
  • Skalierbarkeit und Deployment
  • Deno und Bun kennenlernen
  • [...] und KI
  • Verschlüsselung

Die Fachpresse zur Vorauflage:

[...]: '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.'

Über den Autor
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 [...] und ist ein gefragter Speaker auf allen wichtigen JavaScript- und Webentwickler-Konferenzen. Sebastian Springer bietet auch Seminare zu JavaScript und [...] an und ist Trainer für mehrere Rheinwerk Webinare.
Inhaltsverzeichnis
Materialien zum Buch ... 23
Vorwort ... 25
1. Grundlagen ... 29

1.1 ... Die Geschichte von [...] ... 31

1.2 ... Die Organisation von [...] ... 36

1.3 ... Versionierung von [...] ... 37

1.4 ... Stärken von [...] ... 39

1.5 ... Einsatzgebiete von [...] ... 40

1.6 ... Die wichtigsten Merkmale von [...] ... 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 ... [...]-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 ... [...] in einem Container ausführen ... 68

2.6 ... Zusammenfassung ... 77

3. Ein erstes Beispiel ... 79

3.1 ... REPL -- die interaktive Shell von [...] ... 79

3.2 ... Die erste Applikation ... 88

3.3 ... Debuggen von [...]-Applikationen ... 99

3.4 ... Entwicklungswerkzeug 'nodemon' ... 110

3.5 ... [...] im Watch-Modus ... 111

3.6 ... Zusammenfassung ... 114

4. [...]-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 ... [...] 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 ... [...] und relationale Datenbanken ... 302

8.2 ... [...] 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 ... [...] als WebSocket-Client ... 487

12.5 ... [...] ... 488

12.6 ... Zusammenfassung ... 494

13. Typsichere Applikationen in [...] ... 497

13.1 ... Typsysteme für [...] ... 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 [...]-Applikation ... 520

13.9 ... Native TypeScript-Unterstützung in [...] ... 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 ... [...]-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 [...] 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 ......
Details
Erscheinungsjahr: 2025
Fachbereich: Datenkommunikation, Netze & Mailboxen
Genre: Informatik, Mathematik, Medizin, Naturwissenschaften, Technik
Rubrik: Naturwissenschaften & Technik
Medium: Buch
Reihe: Rheinwerk Computing
Inhalt: 989 S.
ISBN-13: 9783367108343
ISBN-10: 3367108340
Sprache: Deutsch
Einband: Gebunden
Autor: Springer, Sebastian
Auflage: 5. Auflage
Hersteller: Rheinwerk Verlag GmbH
Verantwortliche Person für die EU: Rheinwerk Verlag GmbH, Rheinwerkallee 4, D-53229 Bonn, service@rheinwerk-verlag.de
Maße: 243 x 185 x 59 mm
Von/Mit: Sebastian Springer
Erscheinungsdatum: 06.11.2025
Gewicht: 1,966 kg
Artikel-ID: 134183437

Ähnliche Produkte