Vorwort

Diese Arbeit wurde mithilfe von KI übersetzt. Wir freuen uns über dein Feedback und deine Kommentare: translation-feedback@oreilly.com

Seit ich vor über 10 Jahren die erste Ausgabe von Learning JavaScript Design Patterns geschrieben habe, hat sich die Welt von JavaScript stark weiterentwickelt. Damals arbeitete ich an großen Webanwendungen und stellte fest, dass der Mangel an Struktur und Organisation im JavaScript-Code die Wartung und Skalierung dieser Anwendungen erschwerte.

Heute hat sich die Landschaft der Webentwicklung dramatisch verändert. JavaScript ist zu einer der beliebtesten Programmiersprachen der Welt geworden und wird für alles verwendet, von einfachen Skripten bis hin zu komplexen Webanwendungen. Die JavaScript-Sprache hat sich weiterentwickelt und umfasst nun Module, Versprechen und async/await, was die Art und Weise, wie wir Anwendungen entwickeln, stark beeinflusst hat. Die Art und Weise, wie Entwicklerinnen und Entwickler Komponenten schreiben, wie z. B. bei React, hat auch die Art und Weise, wie sie über Wartbarkeit nachdenken, stark beeinflusst. Dies hat dazu geführt, dass moderne Muster benötigt werden, die diese neuen Veränderungen berücksichtigen.

Mit dem Aufkommen moderner Bibliotheken und Frameworks wie React, Vue und Angular bauen Entwicklerinnen und Entwickler heute Anwendungen, die komplexer sind als je zuvor. Ich habe erkannt, dass eine aktualisierte Version von Learning JavaScript Design Patterns notwendig ist, um die Veränderungen in JavaScript und der Entwicklung von Webanwendungen zu berücksichtigen.

In dieser zweiten Ausgabe von Learning JavaScript Design Patterns möchte ich Entwicklern helfen, moderne Design Patterns auf ihren JavaScript-Code und ihre React-Anwendungen anzuwenden. Das Buch behandelt mehr als 20 Design Patterns, die für den Aufbau wartbarer und skalierbarer Anwendungen unerlässlich sind. In diesem Buch geht es nicht nur um Design Patterns, sondern auch um Rendering- und Performance Patterns, die für den Erfolg moderner Webanwendungen entscheidend sind.

Die erste Ausgabe dieses Buches konzentrierte sich auf klassische Entwurfsmuster wie das Modul-Muster, das Beobachter-Muster und das Vermittler-Muster. Diese Muster sind auch heute noch wichtig und relevant, aber die Welt der Webentwicklung hat sich in den letzten zehn Jahren stark weiterentwickelt, und es sind neue Muster entstanden. Diese neue Ausgabe behandelt diese neuen Muster, wie z. B. Versprechen, async/await und die neueren Varianten des Modulmusters. Wir behandeln auch Architekturmuster wie MVC, MVP und MVVM und erörtern, wie moderne Frameworks mit diesen Architekturmustern zusammenpassen.

Heutige Entwickler sind mit vielen bibliotheks- oder frameworkspezifischen Entwurfsmustern konfrontiert. Das ausgereifte Ökosystem von React und die Verwendung neuerer JS-Primitive bieten eine hervorragende Ausgangsbasis, um über bewährte Methoden und Muster im Framework- oder Bibliothekskontext zu sprechen. Zusätzlich zu den klassischen Design Patterns werden in diesem Buch auch moderne React Patterns wie Hooks, Higher-Order Components und Render Props behandelt. Diese Muster sind spezifisch für React und unerlässlich für die Entwicklung moderner Webanwendungen mit diesem beliebten Framework.

In diesem Buch geht es nicht nur um Muster, sondern auch um bewährte Methoden. Wir behandeln Themen wie Codeorganisation, Leistung und Rendering, die für die Entwicklung hochwertiger Webanwendungen entscheidend sind. Du lernst etwas über dynamische Importe, Code-Splitting, serverseitiges Rendering, Hydration und die Architektur von Inseln, die alle wichtig sind, um schnelle und reaktionsschnelle Webanwendungen zu erstellen.

Am Ende dieses Buches wirst du ein tiefes Verständnis von Design Patterns haben und wissen, wie du sie auf deinen JavaScript-Code und deine React-Anwendungen anwenden kannst. Du wirst auch wissen, welche Muster für das moderne Web relevant sind und welche nicht. Dieses Buch ist nicht nur ein Nachschlagewerk für Patterns, sondern auch ein Leitfaden für die Erstellung hochwertiger Webanwendungen. Du lernst, wie du deinen Code so strukturierst, dass er maximal wartbar und skalierbar ist, und wie du ihn auf Leistung optimierst.

Aufbau des Buches

Dieses Buch ist in 15 Kapitel gegliedert, die dich aus einer modernen Perspektive durch JavaScript-Design-Patterns führen und dabei aktualisierte Sprachfunktionen und React-spezifische Patterns einbeziehen. Jedes Kapitel baut auf dem vorherigen auf und ermöglicht es dir, dein Wissen schrittweise zu erweitern und es effektiv anzuwenden:

Das gesamte Buch enthält praktische Beispiele, um die besprochenen Muster und Konzepte zu veranschaulichen. Am Ende deiner Reise wirst du ein solides Verständnis der JavaScript-Designmuster haben und in der Lage sein, eleganten, wartbaren und skalierbaren Code zu schreiben.

Egal, ob du ein erfahrener Webentwickler bist oder gerade erst anfängst, dieses Buch vermittelt dir das Wissen und die Werkzeuge, die du brauchst, um moderne, wartbare und skalierbare Webanwendungen zu erstellen. Ich hoffe, dass dieses Buch eine wertvolle Ressource für dich sein wird, wenn du deine Fähigkeiten weiter ausbaust und tolle Webanwendungen erstellst.

In diesem Buch verwendete Konventionen

In diesem Buch werden die folgenden typografischen Konventionen verwendet:

Kursiv

Weist auf neue Begriffe, URLs, E-Mail-Adressen, Dateinamen und Dateierweiterungen hin.

Constant width

Wird für Programmlistings sowie innerhalb von Absätzen verwendet, um auf Programmelemente wie Variablen- oder Funktionsnamen, Datenbanken, Datentypen, Umgebungsvariablen, Anweisungen und Schlüsselwörter hinzuweisen.

Constant width italic

Zeigt Text an, der durch vom Benutzer eingegebene Werte oder durch kontextabhängige Werte ersetzt werden soll.

Tipp

Dieses Element steht für einen Tipp oder eine Anregung.

Hinweis

Dieses Element steht für einen allgemeinen Hinweis.

Code-Beispiele verwenden

Zusätzliches Material (Code-Beispiele, Übungen usw.) steht unter https://github.com/addyosmani/learning-jsdp zum Download bereit .

Wenn du eine technische Frage oder ein Problem mit den Codebeispielen hast, sende bitte eine E-Mail an

Dieses Buch soll dir helfen, deine Arbeit zu erledigen. Wenn in diesem Buch Beispielcode angeboten wird, darfst du ihn in deinen Programmen und deiner Dokumentation verwenden. Du musst uns nicht um Erlaubnis fragen, es sei denn, du reproduzierst einen großen Teil des Codes. Wenn du zum Beispiel ein Programm schreibst, das mehrere Teile des Codes aus diesem Buch verwendet, brauchst du keine Erlaubnis. Der Verkauf oder die Verbreitung von Beispielen aus O'Reilly-Büchern erfordert jedoch eine Genehmigung. Die Beantwortung einer Frage mit einem Zitat aus diesem Buch und einem Beispielcode erfordert keine Genehmigung. Wenn du einen großen Teil des Beispielcodes aus diesem Buch in die Dokumentation deines Produkts aufnimmst, ist eineGenehmigung erforderlich.

Wir freuen uns über eine Namensnennung, verlangen sie aber in der Regel nicht. Eine Quellenangabe umfasst normalerweise den Titel, den Autor, den Verlag und die ISBN. Ein Beispiel: "Learning JavaScript Design Patterns, 2. Aufl., von Addy Osmani (O'Reilly). Copyright 2023 Adnan Osmani, 978-1-098-13987-2."

Wenn du der Meinung bist, dass die Verwendung von Code-Beispielen nicht unter die Fair-Use-Regelung oder die oben genannte Erlaubnis fällt, kannst du uns gerne unter kontaktieren

O'Reilly Online Learning

Hinweis

Seit mehr als 40 Jahren bietet O'Reilly Media Schulungen, Wissen und Einblicke in Technologie und Wirtschaft, um Unternehmen zum Erfolg zu verhelfen.

Unser einzigartiges Netzwerk von Experten und Innovatoren teilt sein Wissen und seine Erfahrung durch Bücher, Artikel und unsere Online-Lernplattform. Die Online-Lernplattform von O'Reilly bietet dir On-Demand-Zugang zu Live-Trainingskursen, ausführlichen Lernpfaden, interaktiven Programmierumgebungen und einer umfangreichen Text- und Videosammlung von O'Reilly und über 200 anderen Verlagen. Weitere Informationen erhältst du unter https://oreilly.com.

Wie du uns kontaktierst

Bitte richte Kommentare und Fragen zu diesem Buch an den Verlag:

  • O'Reilly Media, Inc.
  • 1005 Gravenstein Highway Nord
  • Sebastopol, CA 95472
  • 800-998-9938 (in den Vereinigten Staaten oder Kanada)
  • 707-829-0515 (international oder lokal)
  • 707-829-0104 (Fax)

Wir haben eine Webseite für dieses Buch, , auf der wir Errata, Beispiele und zusätzliche Informationen auflisten. Du kannst diese Seite unter https://oreil.ly/js_design_patterns_2e aufrufen .

Schreib eine E-Mail an , um Kommentare oder technische Fragen zu diesem Buch zu stellen.

Neuigkeiten und Informationen über unsere Bücher und Kurse findest du unter https://oreilly.com.

Finde uns auf LinkedIn: https://linkedin.com/company/oreilly-media

Folge uns auf Twitter: https://twitter.com/oreillymedia

Schau uns auf YouTube: https://youtube.com/oreillymedia

Danksagungen

Ich möchte mich bei den tollen Rezensenten der zweiten Ausgabe bedanken, darunter Stoyan Stefanov, Julian Setiawan, Viswesh Ravi Shrimali, Adam Scott und Lydia Hallie.

Zu den leidenschaftlichen und talentierten technischen Reviewern der ersten Ausgabe gehörten Nicholas Zakas, Andrée Hansson, Luke Smith, Eric Ferraiuolo, Peter Michaux und Alex Sexton. Sie - wie auch Mitglieder der Community insgesamt - halfen bei der Überprüfung und Verbesserung dieses Buches, und das Wissen und der Enthusiasmus, den sie in das Projekt einbrachten, waren einfach unglaublich.

Ein besonderer Dank geht an Leena Sohoni-Kasture für ihre Beiträge und ihr Feedback bei der Bearbeitung der zweiten Ausgabe.

Schließlich möchte ich meiner wunderbaren Frau Elle für ihre Unterstützung bei der Erstellung dieser Publikation danken.

Get JavaScript Design Patterns lernen, 2. Auflage now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.