21
Angular Rich Internet Applications with JavaScript Sebastian Lausch, Student Informatik B.Sc. 23.07.2017, München

Angular...2 Aufbau & Inhalt I. Rich Internet Applications II. Nutzen von Angular III. Einführung in Angular 1. Architektur Übersicht 2. Erläuterung der einzelnen Komponenten 4 RIA

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Angular...2 Aufbau & Inhalt I. Rich Internet Applications II. Nutzen von Angular III. Einführung in Angular 1. Architektur Übersicht 2. Erläuterung der einzelnen Komponenten 4 RIA

Angular

Rich Internet Applications with JavaScript

Sebastian Lausch,Student Informatik B.Sc.

23.07.2017, München

Page 2: Angular...2 Aufbau & Inhalt I. Rich Internet Applications II. Nutzen von Angular III. Einführung in Angular 1. Architektur Übersicht 2. Erläuterung der einzelnen Komponenten 4 RIA

2

Aufbau & Inhalt

I. Rich Internet Applications

II. Nutzen von Angular

III. Einführung in Angular

1. Architektur Übersicht

2. Erläuterung der einzelnen Komponenten

IV. Stärken von Angular

V. Schwächen von Angular

VI. Fazit

Page 3: Angular...2 Aufbau & Inhalt I. Rich Internet Applications II. Nutzen von Angular III. Einführung in Angular 1. Architektur Übersicht 2. Erläuterung der einzelnen Komponenten 4 RIA

3

Rich Internet Application

Internetanwendungen / Webapplikationen

Intensive Benutzerinteraktion

NICHT auf Browser beschränkt

Erstellung mit Webframeworks (z.B. Angular) unter Verwendung von Webtechnologien

HTMLCSS JavaScriptAjax

Page 4: Angular...2 Aufbau & Inhalt I. Rich Internet Applications II. Nutzen von Angular III. Einführung in Angular 1. Architektur Übersicht 2. Erläuterung der einzelnen Komponenten 4 RIA

4

RIA vs klassische Webanwendung

+ Höhere Benutzerfreundlichkeit durch moderne Interaktionstechniken (z.B. Drag and Drop)

+ Schnelle Reaktion auf Benutzereingaben

+ Entlastung der Server

+ Mit Frameworks einfach & schnell zu erstellen

- eventuell lange Downloadzeiten

- Ressourcenbelastung von Client

- Sicherheitslücken

Page 5: Angular...2 Aufbau & Inhalt I. Rich Internet Applications II. Nutzen von Angular III. Einführung in Angular 1. Architektur Übersicht 2. Erläuterung der einzelnen Komponenten 4 RIA

5

Nutzen von Angular

Webframework mit TypeScript

Einfachere Webapp-EntwicklungBietet Routinen für häufige Probleme (Login, Datenaustausch)

Abstrahiert externe Datenbankanbindung und HTML, CSS Code

dynamische Anpassung an unterschiedliche Endgeräte

vieles mehr ...

Verbesserung von Wartbarkeit und Erweiterbarkeit der Webapplikation

Page 6: Angular...2 Aufbau & Inhalt I. Rich Internet Applications II. Nutzen von Angular III. Einführung in Angular 1. Architektur Übersicht 2. Erläuterung der einzelnen Komponenten 4 RIA

6

Einführung – Architektur Überblick

Page 7: Angular...2 Aufbau & Inhalt I. Rich Internet Applications II. Nutzen von Angular III. Einführung in Angular 1. Architektur Übersicht 2. Erläuterung der einzelnen Komponenten 4 RIA

7

Einführung - Components

@Component-Dekorator

Zentraler Bestandteil der Angularapplikation

Definiert “View”

Maßgeblich für Benutzerinteraktion verantwortlich

Page 8: Angular...2 Aufbau & Inhalt I. Rich Internet Applications II. Nutzen von Angular III. Einführung in Angular 1. Architektur Übersicht 2. Erläuterung der einzelnen Komponenten 4 RIA

8

Einführung – Templates

Für den Nutzer sichtbarer Teil

Syntax ähnlich zu HTML

Verwendung von Angular-Template-Syntax

Ermöglicht Wiederverwendung von anderen Templates (DRY-Prinzip)

Page 9: Angular...2 Aufbau & Inhalt I. Rich Internet Applications II. Nutzen von Angular III. Einführung in Angular 1. Architektur Übersicht 2. Erläuterung der einzelnen Komponenten 4 RIA

9

Einführung – Directives

@Directive-Dekorator

Manipulieren Aussehen der Templates im DOM

Structural DirectivesVerändern Aussehen durch hinzufügen, verändern oder ausblenden von Elementen im DOM

Attribute DirectivesVerändern Aussehen oder Verhalten von existierenden Elementen ( Bsp. Two-Way-Databinding )

Page 10: Angular...2 Aufbau & Inhalt I. Rich Internet Applications II. Nutzen von Angular III. Einführung in Angular 1. Architektur Übersicht 2. Erläuterung der einzelnen Komponenten 4 RIA

10

Einführung – Data Binding I

Mechanismus, der erheblich Arbeit abnimmt

Kommunikation zwischen Component und Template

Property Binding / InterpolationAbfrage und Austausch von Daten/Werten zwischen Component und Template

Event BindingAufruf von Methoden in Component bei Event in der Template (z.B. Klicken eines Buttons)

Page 11: Angular...2 Aufbau & Inhalt I. Rich Internet Applications II. Nutzen von Angular III. Einführung in Angular 1. Architektur Übersicht 2. Erläuterung der einzelnen Komponenten 4 RIA

11

Einführung – Data Binding II

Two-Way-DatabindingKombination aus Property und Event Binding

Initialer Austausch von Werten

Bei Änderung der Werte (z.B. Usereingabe) →

Übertraung der geänderten Werte an Component

Erhebliche Erleichterung gegenüber jQuery o.Ä.

Page 12: Angular...2 Aufbau & Inhalt I. Rich Internet Applications II. Nutzen von Angular III. Einführung in Angular 1. Architektur Übersicht 2. Erläuterung der einzelnen Komponenten 4 RIA

12

Einführung – Architektur Überblick

Page 13: Angular...2 Aufbau & Inhalt I. Rich Internet Applications II. Nutzen von Angular III. Einführung in Angular 1. Architektur Übersicht 2. Erläuterung der einzelnen Komponenten 4 RIA

13

Einführung - Services

Unklare Definition von Services

Meist für eine spezielle Aufgabe

Abbildung von Logik (nach MVC → Controller)

Werden von Components benutzt

Designprinzip der Trennung von Logik & View nicht erzwungen

Page 14: Angular...2 Aufbau & Inhalt I. Rich Internet Applications II. Nutzen von Angular III. Einführung in Angular 1. Architektur Übersicht 2. Erläuterung der einzelnen Komponenten 4 RIA

14

Einführung – Dependency Injection

Grundlegender Mechanismus

Auflösung von Abhängigkeiten

“Injector” verwaltet Container von allen “@Injectables” (z.B. Services)

Verbindet Services und Components

Page 15: Angular...2 Aufbau & Inhalt I. Rich Internet Applications II. Nutzen von Angular III. Einführung in Angular 1. Architektur Übersicht 2. Erläuterung der einzelnen Komponenten 4 RIA

15

Einführung – Angular Modules

Grundgerüst der Angularapplikation

@NgModule-Dekorator

Trennen Fachdomänen einer Anwendung auf

RootmoduleLegt Aufbau der Anwendung fest

Kennt alle Components, Services und benötigten Module

Wird als Startpunkt der Applikation verwendet

Page 16: Angular...2 Aufbau & Inhalt I. Rich Internet Applications II. Nutzen von Angular III. Einführung in Angular 1. Architektur Übersicht 2. Erläuterung der einzelnen Komponenten 4 RIA

16

Einführung - WrapUp

Page 17: Angular...2 Aufbau & Inhalt I. Rich Internet Applications II. Nutzen von Angular III. Einführung in Angular 1. Architektur Übersicht 2. Erläuterung der einzelnen Komponenten 4 RIA

17

Stärken von Angular

Plattformunabhängigkeit

Breite Unterstützung durch Browser

Data-Binding

Aufbau nach MVC

Weiterentwicklung

Page 18: Angular...2 Aufbau & Inhalt I. Rich Internet Applications II. Nutzen von Angular III. Einführung in Angular 1. Architektur Übersicht 2. Erläuterung der einzelnen Komponenten 4 RIA

18

Schwächen von Angular

Unterstützung älterer Browser

Hohe Einarbeitungszeit

Inkompatibilität zu AngularJS

Page 19: Angular...2 Aufbau & Inhalt I. Rich Internet Applications II. Nutzen von Angular III. Einführung in Angular 1. Architektur Übersicht 2. Erläuterung der einzelnen Komponenten 4 RIA

19

Fazit

Besonders geeignet für hohe Benutzerinteraktion

Hohe Verbreitung und große Community

Stabiles und schnelles Framework

Schneller Einstieg durch Dokumentation mit gezeigter Beispielapplikation

Page 20: Angular...2 Aufbau & Inhalt I. Rich Internet Applications II. Nutzen von Angular III. Einführung in Angular 1. Architektur Übersicht 2. Erläuterung der einzelnen Komponenten 4 RIA

20

Quellenangabe

Angular Homepagehttps://angular.io

Angular Dokumentation (mit Tutorial)

https://angular.io/docs

RIA Erklärung

https://de.wikipedia.org/wiki/Rich_Internet_Application

Page 21: Angular...2 Aufbau & Inhalt I. Rich Internet Applications II. Nutzen von Angular III. Einführung in Angular 1. Architektur Übersicht 2. Erläuterung der einzelnen Komponenten 4 RIA

Herzlichen Dankfür ihre Aufmerksamkeit

Angular - Rich Internet Applications with JavaScript

Sebastian Lausch,Student Informatik B.Sc.

23.07.2017, München