Moderne Spring-Backends für Angular

Flexibele Backends passend zu Ihrer Angular-Lösung

In dieser weiterführenden Intensiv-Schulung lernen Sie, wie sich moderne Backends für eine Angular Anwendung entwickeln lassen. Während der Schulung werden Sie
neben der Entwicklung des Backends auch die für die Kommunikation mit dem Backend notwendige Logik innerhalb der Angular Anwendung selbst entwickeln.

Auf diese Weise erfahren Sie, wie Sie ihr Backend mit den Methoden des Domain Driven Designs in Microservices zerlegen können. Sie finden heraus, was es bei einer guten Kommunikation via HTTP Protokolls gibt und was es mit REST wirklich auf sich
hat.

Aber auch Themen wie Datenzugriff, Authentifizierung und Autorisierung werden während der Schulung näher beleuchtet.

Durch die in der Schulung enthaltenen Übungen entsteht somit ein Backend mit Angular Anwendung, das Sie im Nachhinein als Vorlage für eigene Anwendungen nutzen können.

Microservices mit Spring Boot

Anhand einer Fallstudie entwickeln ein Spring Boot Backend für einen Angular Client.

Dabei lernen wir Domain Driven Design als Architekturmuster für Microservices kennen. Unser ziel ist es, bereits am Anfang der Schulung eine funktionsfähige und erweiterbare Anwendung zu entwickeln die wir im weiteren Verlauf der Schulung ausbauen können.

Wir gehen davon aus, dass Sie bereits Erfahrung mit der Sprache Java haben. Falls nicht, können wir eine Java-Einführung in dieses Training integrieren.

Folgende Aspekte werden dabei im Detail beleuchtet:

  • Design einer Microservice Architektur mittels Domain Driven Design
  • Das HTTP Protokoll und seine Funktionen richtig nutzen
  • Design von guten REST Services mittels Spring und Routing
  • Beschreiben Ihrer API mit Swagger/ OpenAPI
  • Logging, Startup und Konfiguration

Datenzugriff mit Spring Data und JPA/ Hibernate

Nahezu jede Anwendung arbeitet mit Daten und muss diese persistieren. Daher beleuchten wir im nächsten
Schritt die Arbeit mit relationalen Daten.

Wir erweitern unsere Anwendung um eine relationale Datenbank auf die wir mittels Entity Framework Core zugreifen. Auch hier kommt wieder ein Schlüsselelement aus dem Domain Driven Design zum Einsatz: Mit Hilfe von Aggregaten erstellen wir einen optimalen Schnitt unseres Domain Models bzw. unseres relationalen Datenbankmodels um die Daten zwischen Frontend und Backend zu übertragen.

Folgende Aspekte werden dabei im Detail beleuchtet:

  • Datenbankzugriff mittels Spring Data, JPA/ Hibernate
  • Data Transfer Objects und POCOs
  • Mappen von Beziehungen
  • Change Tracking in verteilten Systemen

Authentifizierung und Autorisierung mit Spring Security

Eine weitere häufige Anforderung an Anwendungen ist die Möglichkeit zu erkennen wer gerade mit der
Anwendung arbeiten und ob dieser mit den angeforderten Daten/Funktionen arbeiten darf.

Daher werden wir unsere Anwendung im nächsten Schritt um Authentifizierung und Autorisierung erweitern. Wir lernen dabei wie eine bestehende Benutzerdatenbank angebunden werden kann aber auch wie wir ein eigenes Benutzerverzeichnis nur für unsere Anwendung erstellen können.

Folgende Aspekte werden dabei im Detail beleuchtet:

  • OAuth2 und OpenId Connect als moderne Authentifizierungsprotokolle
  • JSON Web Tokens (JWT) als Container für OAuth2 und OpenId Connect Informationen
  • Kennenlernen Redhat Keycloak
  • Integration eines eigenen Security Token Service

Weiterführende Themen

Die restliche Zeit verbringen wir mit Ihren konkreten Fragen und weiterführenden Themen. Beispiele dafür sind:

  • Arbeiten mit binären Daten und Streaming
  • Asynchrone Kommunikation via Message Queues
  • Nutzung eigener Datenformate jenseits von XML und JSON
  • Einbindung Dokument-orientierter Datenbanken wie MongoDB oder ComosDB
  • Service Discovery und Load Balancing
  • Hosting mit Docker
  • Nutzung von OData

Aktuelle Öffentliche Termine

Immer Nach Vereinbarung

Alle unsere Seminare sind jederzeit auch Remote oder In-House verfügbar. Kontaktieren Sie uns für eine Terminvereinbarung

Remote oder In-House

19. 10 -
21. 10
2020

Trainer: Manfred Steyer, GDE und Rainer Hahnekamp

Remote

Deutsch

30. 11 -
02. 12
2020

Trainer: Manfred Steyer, GDE und Michael Hladky, GDE

Remote

Englisch

Manfred Steyer ist Google Developer Expert (GDE) für Angular sowie Tursted Collaborator im Angular-Team. Zusammen mit seinem Team betreut er Kunden im gesamten deutschen Sprachruam. Der Fokus liegt dabei auf Geschäfts- und Industrie-Anwendungen auf der Basis von Angular.

Jetzt anfragen!