Entwicklung hin zu einer skalierbaren Architektur mit Angular
Im März 2018 nahm Softescu an der ngVikings 2018 in Helsinki, Finnland teil - einer der führenden Angular-Konferenzen in Europa. Die Veranstaltung brachte 330 Teilnehmer und 48 internationale Redner zusammen und konzentrierte sich auf die Entwicklung von Angular und sein wachsendes Ökosystem.
Das Wachstum von Angular seit AngularJS
Der Übergang von AngularJS (1.x) zu Angular (2+) markierte einen signifikanten Wandel in der Webentwicklung. Angular hat eine weit verbreitete Akzeptanz unter den Unternehmensentwicklern gefunden, wobei seine moderne Architektur und die Integration von TypeScript erhebliche Vorteile gegenüber seinem Vorgänger bieten.
Aktueller Stand: Angular 5.2
Anfang 2018 stellt Angular 5.2 die stabile Produktionsversion dar und bringt mehrere wichtige Verbesserungen:
Kernverbesserungen
Reduzierte Bundle-Größe: Erhebliche Code-Optimierung, die zu kleineren Anwendungs-Footprints führt
Verbesserte Bootstrap-Leistung: Schnellere Anwendungsstartzeiten durch optimierte Initialisierung
Vereinfachte Polyfills: Reduzierte Abhängigkeit von Polyfills, was die Gesamtgröße der Anwendung verringert
Verbesserter HTTP-Client: Neue Funktionen im HttpClient-Modul für eine bessere Anforderungsverarbeitung
AOT-Kompilierung standardmäßig: Angular CLI verwendet nun standardmäßig die Ahead-of-Time-Kompilierung, was die anfängliche Ladeleistung verbessert
Ausblick: Angular 6
Angular 6, das für 2018 zur Veröffentlichung vorgesehen ist, verspricht mehrere bahnbrechende Verbesserungen:
Erwartete Funktionen
Dramatische Reduzierung der Bundle-Größe: Erwartete Reduzierung von ~7MB auf ~10KB für CLI-generierte Anwendungen
Verbessertes Lazy Loading: Verbessertes Modulladen für eine bessere Leistung
Vereinfachtes Debugging: Neue Werkzeuge und Fähigkeiten für die Entwicklung
Kern-Framework-Refactoring: Grundlegende Änderungen zur Verbesserung der Anwendungseffizienz
Herausforderungen bei skalierbarer Architektur
Wenn Angular-Anwendungen wachsen, stehen Entwickler vor mehreren gemeinsamen Herausforderungen:
Wichtige Überlegungen
Verwaltung der Anwendungskomplexität
Optimierung des Anfragevolumens
Datenladeverarbeitung
Überlegungen zur Skalierung des Teams
Leistungserhaltung
Best Practices für Architektur
Der Aufbau skalierbarer Angular-Anwendungen erfordert eine sorgfältige Berücksichtigung von:
Modulares Design
Wiederverwendbarkeit von Komponenten
Zustandsverwaltung
Strategien für Lazy Loading
Leistungsoptimierung
Referenzen:
https://www.youtube.com/watch?v=WahpV6zn8lQ
https://www.youtube.com/watch?v=j5NQ19DGBxM
https://blog.strongbrew.io/A-scalable-angular2-architecture/