© Radoman Durkovic/shutterstock.com, © S&S Media
Kiosk Specials
Teil 1: Domänenschnitt mit Nx Monorepos

Der perfekte Projektstart mit Angular


Nx Monorepos erlauben das Aufteilen großer Projekte in einzelne Domänen und Bibliotheken. Zugriffsregeln und öffentliche APIs stellen eine lose Kopplung sicher. Der erste Teil dieser Artikelserie stellt vor, wie das relativ einfach zum Projektstart eingerichtet werden kann.

Artikelserie

Teil 1: Domänenschnitt mit Nx Monorepos

Teil 2: Zustandsverwaltung mit NgRx und Fassaden

Teil 3: OAuth 2.0 und die neuen Security Best Practices

Mit Lösungen wie Angular lassen sich recht schnell moderne Clients für Geschäftsanwendungen schreiben. Doch sind die auch langfristig wartbar? Genau darauf kommt es nämlich bei vielen Projekten im Unternehmensumfeld an. Ein Produktlebenszyklus, der sich über zehn bis zwanzig Jahre erstreckt, ist keine Seltenheit.

Genau darum dreht sich die dreiteilige Serie, die mit diesem Artikel startet. Dabei möchte ich meine Erfahrungen, die sich seit der BETA-Phase von Angular angesammelt haben, teilen und zeigen, wie sich mit einem guten Projektstart eine solide Basis für solch ein Vorhaben bereitstellen lässt. Dazu verwende ich eine Fallstudie, deren Quellcode man unter [1] findet.

Domänenschnitt

Es ist kein Geheimnis, dass eine zu starke Verknüpfung einzelner Programmteile zu einer schlecht wartbaren Architektur führt. Wenn alles von allem abhängig ist, führt jede Änderung tendenziell zu Breaking Changes. Eine mögliche Lösung, die u. a. durch DDD [2] bekannt wurde, ist das Schneiden nach Domänen.

Vereinfacht formuliert sollen nach fachlichen Kriterien einzelne Bereiche, die voneinander möglichst wenig wissen müssen, identifiziert werden. Diese Domänen werden nun voneinander unabhängig modelliert, Verweise zwischen Domänen sind zu vermeiden.

In der hier verwendeten Fallstudie, die sich um Flugbuchungen dreht, lassen sich beispielsweise die in Abbildung 1 dargestellten Domänen identifizieren.

steyer_angular_start1_1.tif_fmt1.jpgAbb. 1: Domänen in unserer Fallstudie

Nun stellt sich natürlich die Frage, wie sich diese Domänen in einem Angular-Projekt abbilden lassen. Als einfache Option...

Kiosk Specials
Teil 1: Domänenschnitt mit Nx Monorepos

Der perfekte Projektstart mit Angular

Nx Monorepos erlauben das Aufteilen großer Projekte in einzelne Domänen und Bibliotheken. Zugriffsregeln und öffentliche APIs stellen eine lose Kopplung sicher. Der erste Teil dieser Artikelserie stellt vor, wie das relativ einfach zum Projektstart eingerichtet werden kann.

Manfred Steyer


Nx Monorepos erlauben das Aufteilen großer Projekte in einzelne Domänen und Bibliotheken. Zugriffsregeln und öffentliche APIs stellen eine lose Kopplung sicher. Der erste Teil dieser Artikelserie stellt vor, wie das relativ einfach zum Projektstart eingerichtet werden kann.

Artikelserie

Teil 1: Domänenschnitt mit Nx Monorepos

Teil 2: Zustandsverwaltung mit NgRx und Fassaden

Teil 3: OAuth 2.0 und die neuen Security Best Practices

Mit Lösungen wie Angular lassen sich recht schnell moderne Clients für Geschäftsanwendungen schreiben. Doch sind die auch langfristig wartbar? Genau darauf kommt es nämlich bei vielen Projekten im Unternehmensumfeld an. Ein Produktlebenszyklus, der sich über zehn bis zwanzig Jahre erstreckt, ist keine Seltenheit.

Genau darum dreht sich die dreiteilige Serie, die mit diesem Artikel startet. Dabei möchte ich meine Erfahrungen, die sich seit der BETA-Phase von Angular angesammelt haben, teilen und zeigen, wie sich mit einem guten Projektstart eine solide Basis für solch ein Vorhaben bereitstellen lässt. Dazu verwende ich eine Fallstudie, deren Quellcode man unter [1] findet.

Domänenschnitt

Es ist kein Geheimnis, dass eine zu starke Verknüpfung einzelner Programmteile zu einer schlecht wartbaren Architektur führt. Wenn alles von allem abhängig ist, führt jede Änderung tendenziell zu Breaking Changes. Eine mögliche Lösung, die u. a. durch DDD [2] bekannt wurde, ist das Schneiden nach Domänen.

Vereinfacht formuliert sollen nach fachlichen Kriterien einzelne Bereiche, die voneinander möglichst wenig wissen müssen, identifiziert werden. Diese Domänen werden nun voneinander unabhängig modelliert, Verweise zwischen Domänen sind zu vermeiden.

In der hier verwendeten Fallstudie, die sich um Flugbuchungen dreht, lassen sich beispielsweise die in Abbildung 1 dargestellten Domänen identifizieren.

steyer_angular_start1_1.tif_fmt1.jpgAbb. 1: Domänen in unserer Fallstudie

Nun stellt sich natürlich die Frage, wie sich diese Domänen in einem Angular-Projekt abbilden lassen. Als einfache Option...

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang