Читать книгу Angular - Ferdinand Malcher - Страница 17

Оглавление

Aktualisierungen in der dritten Auflage

Die Webplattform bewegt sich schnell, und so muss auch ein Framework wie Angular stets an neue Gegebenheiten angepasst werden und mit den Anforderungen wachsen. In den drei Jahren seit Veröffentlichung der ersten Auflage dieses Buchs haben sich viele Dinge geändert: Es wurden Best Practices etabliert, neue Features eingeführt, und einige wenige Features wurden wieder entfernt.

Die dritte Auflage, die Sie mit diesem Buch in Händen halten, wurde deshalb grundlegend aktualisiert und erweitert. Dabei haben wir das Feedback unserer Leser berücksichtigt, Fehler korrigiert und viele Erklärungen verständlicher formuliert.

Wir möchten Ihnen einen kurzen Überblick über die wichtigsten Neuerungen und Aktualisierungen der dritten Auflage geben. Alle Texte und Codebeispiele haben wir auf die Angular-Version 10 aktualisiert. Dabei betrachten wir auch neue Features. Schon in der zweiten Auflage haben wir umfassende Aktualisierungen vorgenommen, die wir am Ende dieses Abschnitts zusammengefasst haben.

Neue Kapitel

In der dritten Auflage sind die folgenden Kapitel neu hinzugekommen:

10.3.5 OAuth 2 und OpenID Connect (Seite 262)In der Iteration III erläutern wir die Kommunikation mit einem HTTP-Backend und betrachten Interceptoren, mit denen wir zum Beispiel Tokens in den Header einer HTTP-Nachricht einfügen können. In diesem Zusammenhang haben wir einen neuen Abschnitt hinzugefügt, in dem wir die Authentifizierung und Autorisierung mithilfe von OAuth 2 und OpenID Connect erläutern.

19 Angular-Anwendungen mit Docker bereitstellen (Seite 563)Nachdem wir das Thema Docker in der zweiten Auflage nur in einem kurzen Abschnitt erwähnt hatten, haben wir nun ein ausführliches Kapitel neu ins Buch aufgenommen. Dort erläutern wir am praktischen Beispiel, wie Sie eine Angular-Anwendung in einem Docker-Container bereitstellen und ausführen können. Bei diesem Kapitel hat uns unser treuer Leser Michael Kaaden mit Praxiserfahrung und viel Zuarbeit unterstützt – vielen Dank!

24 Progressive Web Apps (PWA) (Seite 673)Progressive Web Apps sind ein wichtiger Pfeiler für moderne Anwendungsentwicklung mit Webtechnologien. Hier spielen besonders Service Worker, Installierbarkeit, Offlinefähigkeit und Push-Benachrichtigungen eine Rolle. Da das Thema bisher in diesem Buch nicht behandelt wurde, haben wir ein neues Kapitel entwickelt. Sie lernen dabei die Grundlagen zu Progressive Web Apps und migrieren die Beispielanwendung zu einer PWA.

27 Fortgeschrittene Konzepte der Angular CLI (Seite 735)Die Angular CLI kann mehr als nur eine Anwendung in einem Projekt verwalten. In diesem neuen Kapitel werfen wir deshalb einen Blick auf die Architektur eines Workspace, der mehrere Anwendungen und Bibliotheken in einem gemeinsamen Repository pflegt. Zusätzlich betrachten wir hier kurz die Schematics, die für die Codegenerierung in der Angular CLI verantwortlich sind.

28.1 Web Components mit Angular Elements (Seite 743)Unter »Wissenswertes« sammeln wir interessante Themen, die im Verlauf des Buchs keinen Platz gefunden haben. Hier haben wir einen neuen Abschnitt zu Angular Elements hinzugefügt. Sie lernen, wie Sie Angular-Komponenten als Web Components verpacken, um sie auch in anderen Webanwendungen einzusetzen.

Stark überarbeitete und erweiterte Kapitel

10.2 Reaktive Programmierung mit RxJS (Seite 206)Das Kapitel zu RxJS haben wir um einige wichtige Details ergänzt: So wurde die Erläuterung zu Higher-Order Observables überarbeitet und mit Marble-Diagrammen illustriert, wir haben den Unterschied zwischen Observer und Subscriber stärker herausgestellt und viele Erläuterungen vereinfacht.

15.1 i18n: mehrere Sprachen und Kulturen anbieten (Seite 449)Das Thema Internationalisierung wurde mit Angular 9.0 neu aufgerollt und verfügt nun über erweiterte Funktionen, z. B. Übersetzungen im TypeScript-Code. Wir nutzen in diesem Kapitel jetzt das neue Paket @angular/localize, um Übersetzungen zu rendern.

18 Build und Deployment mit der Angular CLI (Seite 539)Das Kapitel zum Deployment haben wir neu strukturiert. Hier wird nun die Build-Konfiguration in der angular.json detailliert erläutert. Mit dem Release des neuen Ivy-Compilers ist auch das Thema JIT mehr in den Hintergrund gerückt. Außerdem haben wir einen neuen Abschnitt zum Befehl ng deploy hinzugefügt.

20 Server-Side Rendering mit Angular Universal (Seite 587)Der Workflow für Server-Side Rendering wurde mit Angular 9.0 stark vereinfacht. Wir haben das Kapitel zu Angular Universal aktualisiert und erweitert: Dabei gehen wir auf den neuen Builder für statisches Pre-Rendering ein, geben Tipps für den Praxiseinsatz und betrachten das Community-Projekt Scully.

21 State Management mit Redux und NgRx (Seite 607)Das Framework NgRx wird stetig weiterentwickelt, und so haben wir das Kapitel zum State Management grundlegend aktualisiert. Wir setzen nun durchgehend auf die neuen Creator Functions und haben viele Erläuterungen ausführlicher und verständlicher gestaltet. Außerdem gehen wir auf das neue Paket @ngrx/component ein und werfen einen kurzen Blick auf das Community-Projekt RxAngular.

Sonstiges

Fehler gefunden?

Neben den genannten Kapiteln haben wir alle Texte im Buch erneut kritisch überarbeitet. An vielen Stellen haben wir Formulierungen angepasst, Details ergänzt und Fehler korrigiert. Wenn Sie weitere Fehler finden oder Anregungen zum Buch haben, so schreiben Sie uns bitte! Wir werden uns Ihr Feedback in der nächsten Auflage zu Herzen nehmen.

Für die einzelnen Iterationsschritte aus dem Beispielprojekt bieten wir eine Differenzansicht an. So können Sie die Änderungen am Code zwischen den einzelnen Kapiteln besser nachvollziehen. Wir gehen darauf auf Seite 53 genauer ein.

Zu guter Letzt haben wir an ausgewählten Stellen in diesem Buch Zitate von Persönlichkeiten aus der Angular-Community aufgeführt. Die meisten dieser Zitate haben wir direkt für dieses Buch erbeten. Wir freuen uns sehr, dass so viele interessante und humorvolle Worte diesem Buch eine einmalige Note geben.

Aktualisierungen in der zweiten Auflage

Neue Kapitel

Folgende Kapitel und Abschnitte sind in der zweiten Auflage neu hinzugekommen:

 10.3 Interceptoren: HTTP-Requests abfangen und transformieren (Seite 257)

 20 Server-Side Rendering mit Angular Universal (Seite 587)

 28 Wissenswertes (Seite 743)27.2 Schematics: Codegenerierung mit der Angular CLI (Seite 740)28.2 Container und Presentational Components (Seite 751)28.4 TrackBy-Funktion für die Direktive ngFor (Seite 756)28.6 Angular Material und weitere UI-Komponentensammlungen (Seite 762)28.11 Angular updaten (Seite 785)

Vollständig neu geschriebene Kapitel

Einige bereits in der ersten Auflage existierende Kapitel wurden für die zweite Auflage vollständig neu aufgerollt:

1 Schnellstart (Seite 3)Der Schnellstart basierte in der ersten Auflage auf einer lokalen Lösung mit SystemJS und Paketen aus einem CDN. Der neue Schnellstart setzt auf die Online-Plattform StackBlitz zum schnellen Prototyping von Webanwendungen.

10.2 Reaktive Programmierung mit RxJS (Seite 206)Das Prinzip der reaktiven Programmierung und das Framework RxJS haben in den letzten Jahren weiter an Bedeutung gewonnen. Das alte Kapitel zu RxJS lieferte nur einen kurzen Überblick, ohne auf Details einzugehen. Mit dieser Neufassung finden Sie jetzt eine ausführliche Einführung in die Prinzipien von reaktiver Programmierung und Observables, und es werden alle wichtigen Konzepte anhand von Beispielen erklärt. Im Gegensatz zur ersten Auflage verwenden wir die neuen Pipeable Operators.

12 Formularverarbeitung & Validierung: Iteration IV (Seite 275)In der ersten Auflage haben wir sowohl Template-Driven Forms als auch Reactive Forms gleichbedeutend vorgestellt. Wir empfehlen mittlerweile nicht mehr den Einsatz von Template-Driven Forms. Daher stellen wir zwar beide Ansätze weiterhin vor, legen aber im Kapitel zur Formularverarbeitung einen stärkeren Fokus auf Reactive Forms. Das Praxisbeispiel wurde neu entworfen, um eine saubere Trennung der Zuständigkeiten der Komponenten zu ermöglichen. Die Erläuterungen im Grundlagenteil wurden neu formuliert, um besser für die Anforderungen aus der Praxis geeignet zu sein.

21 State Management mit Redux und NgRx (Seite 607)In den letzten zwei Jahren hat sich unserer Ansicht nach das Framework NgRx gegen weitere Frameworks wie angular-redux klar durchgesetzt. Während die erste Auflage in diesem Kapitel noch auf angular-redux setzte, arbeitet das Kapitel der zweiten Auflage durchgehend mit den Reactive Extensions for Angular (NgRx). Wir erarbeiten in der Einführung schrittweise ein Modell für zentrales State Management, um die Architektur von Redux zu erläutern, ohne eine konkrete Bibliothek zu nutzen.

Stark überarbeitete und erweiterte Kapitel

4 Einführung in TypeScript (Seite 27)Das Grundlagenkapitel zu TypeScript wurde neu strukturiert und behandelt zusätzlich auch neuere Features von ECMAScript/TypeScript, z. B. Destrukturierung, Spread-Operator und Rest-Syntax.

10.1 HTTP-Kommunikation: ein Server-Backend anbinden (Seite 189)Das HTTP-Kapitel setzt durchgehend auf den HttpClient, der mit Angular 4.3 eingeführt wurde. Dabei wird der Blick auch auf die erweiterten Features des Clients geworfen. Themen, die spezifisch für RxJS sind, wurden aus diesem Kapitel herausgelöst und werden nun im RxJS-Kapitel behandelt.

14.4.1 Resolver: asynchrone Daten beim Routing vorladen (Seite 441)Resolver sind aus unserer Sicht nicht die beste Wahl, um reguläre Daten über HTTP nachzuladen. Der Iterationsschritt zu Resolvern wurde deshalb aus dem Beispielprojekt entfernt, und das Thema wird in dieser Auflage nur noch in der Theorie behandelt.

15.1 i18n: mehrere Sprachen und Kulturen anbieten (Seite 449)Die Möglichkeiten zur Konfiguration des Builds wurden mit Angular 6.0 stark vorangebracht. Viele zuvor notwendige Kommandozeilenparameter sind nun nicht mehr notwendig, die Konfigurationsdatei angular.json löst diese ab. Dadurch konnten wir das Kapitel zur Internationalisierung (i18n) kürzen und verständlicher gestalten. Im Gegensatz zur ersten Auflage zeigen wir nicht mehr, wie man eine Anwendung im JIT-Modus internationalisiert, der hauptsächlich für die Entwicklung vorgesehen ist, aber nicht für produktive Anwendungen.

17.1 Softwaretests (Seite 483)Das Kapitel zum Testen von Angular-Anwendungen wurde stark erweitert. Neben den reinen Werkzeugen wird der Fokus besonders auf Philosophien, Patterns und Herangehensweisen gelegt. Zusätzlich werden die mitgelieferten Tools zum Testen von HTTP und Routing betrachtet.

25 NativeScript: mobile Anwendungen entwickeln (Seite 695)Zur Entwicklung einer nativen mobilen Anwendung nutzen wir in diesem Kapitel die neue Version 6 von NativeScript, die insbesondere Verbesserungen in Sachen Codegenerierung und Wiederverwendbarkeit von Code mitbringt.

28.9 Change Detection (Seite 770)Das Kapitel zur Change Detection wurde für besseres Verständnis neu strukturiert. Insbesondere wird auf Debugging und Strategien zur Optimierung eingegangen.

Angular

Подняться наверх