Angular Das Praxisbuch zu Grundlagen und Best Practices

Angular ist ein äußerst populäres Open-Source-Framework von Google, das Webentwickler wirkungsvoll dabei unterstützt, die Komplexität moderner JavaScript- und Single-Page-Anwendungen (SPA) im Griff zu behalten.Das Buch wurde in der zweiten Auflage durchgehend überarbeitet und aktualisiert. Es ist au...

Descripción completa

Detalles Bibliográficos
Otros Autores: Steyer, Manfred, author (author), Schwab, Daniel, author
Formato: Libro electrónico
Idioma:Alemán
Publicado: Heidelberg, [Germany] : O'Reilly 2017.
Edición:2. Auflage
Colección:Animals
Materias:
Ver en Biblioteca Universitat Ramon Llull:https://discovery.url.edu/permalink/34CSUC_URL/1im36ta/alma991009631550806719
Tabla de Contenidos:
  • Intro
  • Angular - Das Praxisbuch zu Grundlagen und Best Practices
  • Impressum
  • Inhalt
  • Vorwort
  • Zielgruppe
  • Zielsetzung des Buchs
  • Quellcodebeispiele, Online-Services und Errata
  • Konventionen in diesem Buch
  • Aufbau des Buchs
  • Schulungen und Beratung
  • Danksagungen
  • Kapitel 1 - Projekt-Setup
  • Angular CLI
  • Die CLI installieren
  • Ein Projekt mit der CLI generieren
  • Den Port des Entwicklungsservers festlegen
  • Build mit CLI
  • Projektstruktur von CLI-Projekten
  • Bootstrap installieren
  • Alternativen zur CLI
  • Eject
  • Seed-Projekte
  • Werkzeuge
  • Überlegungen zur Entwicklungsumgebung
  • Visual Studio Code
  • WebStorm und IntelliJ
  • Browser
  • Das Caching verhindern
  • Zusammenfassung
  • Kapitel 2 - Erste Schritte mit TypeScript
  • Motivation
  • Erste Schritte mit TypeScript
  • Hallo Welt!
  • Variablen deklarieren
  • Ausgewählte Datentypen in TypeScript
  • number
  • string
  • boolean
  • Arrays
  • any
  • Function
  • Klassen und Interfaces
  • Ein erstes Objekt samt Modul
  • Klassen
  • Funktionen und Lambda-Ausdrücke
  • Interfaces und Vererbung
  • Interfaces
  • Klassenvererbung
  • Type Assertion ("Type Casting")
  • Abstrakte Klassen
  • Zugriff auf eine Basis-Klasse
  • Ausgewählte Sprachmerkmale
  • Getter und Setter
  • Generics
  • Exceptions
  • Strikte Null-Prüfungen
  • Asynchrone Operationen
  • XmlHttpRequest
  • Callbacks
  • Promises
  • Ausblick auf Observables
  • Zusammenfassung
  • Kapitel 3 - Erste Schritte mit Angular
  • Eine erste Angular-Komponente
  • Dateien für die Komponente anlegen
  • Eine Klasse für die Komponente
  • Auf das Backend zugreifen
  • Templates und die Datenbindung
  • Two-Way-Binding
  • Property-Binding (One-Way-Binding)
  • Direktiven
  • Pipes
  • Event-Bindings
  • Das gesamte Template
  • Alternative Schreibweisen für Bindings
  • Templates kompilieren
  • Ein erstes Modul
  • Bootstrapping.
  • Anwendung ausführen
  • Zusammenfassung
  • Kapitel 4 - Komponenten und Datenbindung
  • Datenbindung in Angular
  • Rückblick auf AngularJS 1.x
  • Property-Binding
  • Event-Bindings
  • Das Zusammenspiel von Property- und Event-Bindings
  • Bindings im Template
  • Two-Way-Bindings
  • Eigene Komponenten mit Datenbindung
  • Eine Komponente mit Property-Binding
  • Implementierung der Komponente mit Property-Bindings
  • Komponente registrieren und aufrufen
  • Komponenten mit Event-Bindings
  • Implementierung der Komponente mit Event-Binding
  • Komponente aufrufen
  • Komponenten mit Two-Way-Bindings
  • Life-Cycle-Hooks
  • Ausgewählte Hooks
  • Experiment mit Life-Cycle-Hooks
  • DateControl mit Life-Cycle-Hooks
  • Zusammenfassung
  • Kapitel 5 - Pipes
  • Überblick
  • Built-in Pipes
  • Eigene Pipes
  • Pure Pipes
  • Implementierung einer einfachen Pipe
  • Pipes registrieren und nutzen
  • Zusammenfassung
  • Kapitel 6 - Services und Dependency Injection
  • Austauschbarkeit dank Dependency Injection
  • Services implementieren und nutzen
  • Ein erster Service
  • Einen Service global registrieren
  • Einen Service nutzen
  • Einen Service lokal registrieren
  • Arten von Providern
  • Token
  • useClass
  • useValue
  • useFactory
  • useExisting
  • multi
  • Konstanten als Token
  • Zusammenfassung
  • Kapitel 7 - Module
  • Motivation
  • Eine Angular-typische Modulstruktur
  • Shared Modules
  • Feature-Modules
  • Root-Modules
  • Module reexportieren
  • Zusammenfassung
  • Kapitel 8 - Routing
  • Überblick
  • Routing und Platzhalter
  • Routen einsetzen
  • Erste Schritte mit dem Router
  • Routing-Konfiguration einrichten
  • Root-Komponente einrichten
  • AppModule anpassen
  • Strukturierung mit Modulen
  • Hierarchisches Routing mit Child-Routes
  • Überblick zu Child-Routes
  • Child-Routes implementieren
  • Parametrisierte Routen
  • Parameter an Routen übergeben.
  • QueryString und Hash-Fragment
  • Lazy Loading von Routen
  • Routen für das Lazy Loading einrichten
  • Lazy Loading und Webpack
  • Lazy Loading im Browser nachvollziehen
  • Lazy Loading und Shared Modules
  • Den AuthService implementieren und nutzen
  • Korrekte Nutzung von SharedModules beim Einsatz von Lazy Loading
  • Preloading
  • Preloading aktivieren
  • Preloading mit einem Experiment nachvollziehen
  • Selektives Preloading mit eigener Preloading-Strategie
  • Aux-Routes
  • Guards
  • Das Aktivieren von Routen verhindern
  • Das Aktivieren von untergeordneten Routen verhindern
  • Das Laden von Modulen verhindern
  • Das Deaktivieren einer Komponente verhindern
  • Events
  • Resolver
  • Zusammenfassung
  • Kapitel 9 - Formulare und Validierung
  • Template-getriebene Formulare
  • FormsModule einbinden
  • Eingaben validieren
  • Zugriff auf den Zustand des Formulars
  • Bedingte Formatierung von Eingabefeldern
  • Eigene Validierungsdirektiven
  • Parametrisierbare Validierungsregeln
  • Asynchrone Validatoren
  • Die Komponente zum Präsentieren von Validierungsfehlern
  • Die Standardsteuerelemente von HTML nutzen
  • Checkboxes
  • Radio-Buttons
  • Dropdown-Felder
  • Geschachtelte Formulare
  • Multi-Field-Validatoren
  • Reaktive Formulare
  • Modul einbinden
  • Das Formular mit einem Objektgraphen beschreiben
  • Einen Objektgraphen an ein Formular binden
  • Validatoren
  • Wiederholgruppen mit FormArray
  • Wiederholgruppen validieren
  • Dynamische Formulare
  • In die Datenbindung mit Value-Accessoren eingreifen
  • Ausgaben formatieren und Eingaben parsen
  • Eigene Formular-Steuerelemente
  • Zusammenfassung
  • Kapitel 10 - Internationalisierung
  • Übersetzungen mit Angular
  • ng-xi18n ohne die Angular CLI einrichten
  • Texte markieren
  • Dynamische Übersetzungen
  • Integration in die Applikation
  • Integration ohne Angular CLI
  • Ergebnis.
  • Die Alternative ngx-translate
  • Die Library einrichten
  • Datenquelle bestimmen
  • Internationalisierung mit Direktiven und Pipes
  • Dynamische Übersetzungen mit Angular-Pipes
  • Sprachwechsel mit TranslateService
  • Zusammenfassung
  • Kapitel 11 - RxJS und Angular
  • Reactive Extensions für JavaScript
  • Observables mit Angular
  • Observable erstellen und mit einem Observer arbeiten
  • Die Async-Pipe
  • Ein Observable über unsubscribe entsorgen
  • Cold vs. Hot Observables
  • Type-Ahead-Suche mit Subject
  • Subject zur Event-Steuerung nutzen
  • Marble-Diagramme verstehen
  • Zusammenfassung
  • Kapitel 12 - Performanceoptimierung mit OnPush, Immutables und Observables
  • Performanceoptimierung mit Immutables
  • Arbeiten mit Immutables
  • Sprachkonstrukte für Immutables in TypeScript
  • Immutables und Datenbindung
  • Performanceoptimierung mit Observables
  • Observables und Datenbindung
  • Datenbindung mit Observables
  • Zusammenfassung
  • Kapitel 13 - Details zu Komponenten und Direktiven
  • Weiterführende Aspekte von Komponenten
  • Content Projection
  • Parent-Komponenten referenzieren
  • Handles
  • View vs. Content
  • Kommunikation über Services
  • View-Provider
  • Komponentenvererbung
  • Attribut-Direktiven
  • Direktiven definieren
  • Auf Ereignisse mit HostListener reagieren
  • Strukturelle Direktiven
  • Templates und Container
  • Microsyntax
  • Templates zur Laufzeit auswählen
  • Templates referenzieren
  • Dynamisch Komponenten erzeugen
  • Zusammenfassung
  • Kapitel 14 - Animationen
  • Grundlagen
  • Konfiguration der Polyfills
  • Animationen mit Trigger, State und Transition
  • trigger und state nutzen
  • Zustandswechsel mit Transition
  • Einfache Effekte definieren
  • Vorbereitung
  • Berechnete CSS-Werte und Easing
  • Animationen mit ngIf
  • Komplexe Animationen abbilden
  • Erweiterte Effekte mit Keyframes
  • Gleichzeitige Animationen mit Group.
  • Animation-Callbacks
  • Touch-Gestensteuerung mit HammerJS
  • Zusammenfassung
  • Kapitel 15 - Authentifizierung und Autorisierung
  • OAuth 2 und OpenID Connect
  • OAuth 2
  • Benutzer mit OpenID Connect authentifizieren
  • JSON Web Token
  • OAuth 2- und OIDC-Flows
  • Implicit Flow
  • Resource Owner Password Credentials Flow
  • Angular konfigurieren
  • OAuth2-Bibliothek einrichten und konfigurieren
  • Login mit Implicit Flow
  • Login mit Resource Owner Password Credentials Flow
  • Zugriff auf die Web-API mit Access Token
  • Zusammenfassung
  • Kapitel 16 - Redux mit @ngrx/store
  • Motivation
  • Redux
  • Überblick über @ngrx/store
  • Fallbeispiel
  • Single Immutable State Tree
  • Reducer
  • Bootstrapping
  • Komponente
  • Template
  • Undo/Redo
  • Zeitreisende Debugger
  • Zusammenfassung
  • Kapitel 17 - Testing
  • Testbausteine
  • Jasmine
  • Anatomie eines Jasmine-Tests
  • Test-Runner
  • Unit-Tests mit Karma
  • Installation und Konfiguration
  • Ein Test-Bundle nutzen
  • Ein erster Unit-Test
  • Isolated Unit Test
  • Angular Testing Utilities
  • Debugging über Source Maps
  • Komponenten testen
  • Komplexe Komponenten vorbereiten
  • Attribut-Direktiven
  • Asynchrone Tests und der Http-Service
  • Den Http-Service vorbereiten
  • Asynchron testen
  • Pipes
  • Code-Coverage-Report
  • Konfiguration ohne Angular CLI
  • End-2-End-Tests mit Protractor
  • Asynchrone Befehle und der WebDriver-ControlFlow
  • Installation und Konfiguration
  • Protractor-Konfigurationsdatei
  • E2E-Tests mit Jasmine
  • Spezifikation und Resultat eines E2E-Tests mit Jasmine
  • Elemente mit dem Hilfsobjekt by finden
  • Eigene Locators nutzen
  • Interaktion mit Elementen
  • Jasmine-Reporter
  • Zusammenfassung
  • Kapitel 18 - Tools und erweiterter Projektaufbau
  • Projektaufbau allgemein
  • Style Guide
  • Projekte mit Webpack
  • Einstiegspunkt festlegen
  • Loader definieren.
  • Externe Libraries und Dateien einbinden.