Nachdem es schon wieder zweieinhalb Jahre her ist, dass wir unseren letzten Blick auf Angular geworfen haben, luden wir uns Martina Kraus ein, um uns wieder auf Stand zu bringen.
Martina twittert als @martinakraus11, ist selbstständige Beraterin, Trainerin und Sprecherin zum Thema Angular, und das nicht erst seit gestern. Zudem organisiert sie zahlreichen Meetups in der Heidelberger Region. Aufgrund dieser zahlreichen Aktivitäten ist sie mittlerweile zur Google Developer Expert (GDE) für Angular avanciert und tauscht sich dementsprechend viel mit dem Angular Core-Team zu Wünschen aus der Community und neuen Entwicklungen des Frameworks aus.
Schaunotizen
- [00:01:00] Angular im Jahr 2021
- Die aktuell neuste Version des Frameworks ist die Version 12, die mittlerweile voll auf den Compiler „Ivy“ setzt, welcher in unserer letzten Folge vor zweieinhalb Jahren noch Zukunftsmusik war. Einer der ganz großen Vorteile von Ivy ist, dass der erzeugte Code im Gegensatz zu früher getreeshaked werden kann, was Angular-Anwendungen, die nicht von Angular bereitgestellten Features nutzen, deutlich kleiner werden lässt.
Außerdem beschreitet das Framework einen interessanten neuen Pfad, nämlich indem es zunehmend auf TypeScript zugunsten von ES 2017 verzichtet. Das kommt insofern unerwartet, als dass Angular bei seiner Einführung 2016 als erstes JavaScript-Framework überhaupt voll auf TypeScript gesetzt hat und die anderen beiden großen Frameworks jetzt erst bei Angulars Level an TypeScript-Unterstützung angekommen sind. Auf Typinferenz muss dabei niemand verzichten, denn Angular 12 setzt auf einen neuen Modus namens „Strict“, der von der Autorin erwartet, dass alle Variablen, die an einem Template hängen, initialisiert werden müssen. Und dadurch ist dann von Anfang an klar, um was für einen Datentyp es sich handelt. Wir sind gespannt, ob andere Frameworks hier nachziehen werden.
Nach wie vor bereitet der Umstieg vom alten Compiler auf Ivy allerdings hier und da noch Probleme, weil nämlich Angular-Libraries für beide Compiler adaptiert werden müssen. Hier gibt es aber Schützenhilfe von Tools wie dem Angular Compatibility Compiler (ngcc) – und auch Martina hat dazu dankenswerterweise einen Talk auf Lager. Zudem hat Ivy noch ein paar eher halb-offizielle Features wie Higher Order Components oder Custom Change Detection, die in Zukunft ausgereiftere Interfaces benötigen. Auch dazu hat Martina einen Talk parat!
Eine weitere wichtige Neuerung von Angular 12 ist dass es mit Webpack 5 daherkommt. Dieses erleichtert vor allem das Orchestrieren von in Angular gebauten Micro-Frontends, was so vormals nur mit der Microfrontend-Library von Manfred Steyer möglich war (siehe dazu auch den Talk vom ihm).
Wer nach dem Hören unserer Folge Lust auf Angular bekommen hat, dem empfiehlt Martina den Einstieg über das Angular-eigene Einsteiger-Toturial „Tour of Heroes„, oder aber die Tutorials von Maximilian Schwarzmüller, aka Academind.
Geht es hingegen darum, Feedback los zu werden, dann schickt eine Mail an devrel@angular.io, oder wendet Euch an die DevRel Emma Twersky, oder geht den Weg über eine*n GDE wie Martina.
Kommentare
Martin #
Geschrieben am 22.06.2021 um 17:01
Es mag sein das Angular immer mehr Overhead rausschmeißt. Doch all die tollen Sachen sind bei anderen Frameworks Standard, es steht quasi garnicht zur Diskussion. Es muss nicht als Feature Hype durch die Community getragen werden.
Zuletzt habe ich OCID umgesetzt. Geht auch mit Angular hui. Geht auch einfach mit einer einfach Bibliothek und das ganz auch noch Framework neutral.
Wer einmal im Angular gefangen ist, sieht all die ganzen einfachen Wege nicht und meint überall nach ng* googeln.
Auch dir Argumentation zur Architektur ist doch ein Trugschluss, denn es ist auch bei Vue oder React im Grunde nicht anders. Doch ohne die ganzen Framework Kopplung.
Vor 5 Jahren hätte ich das anders gesehen, aber warum heute Angular?
Das ist wie wenn den Umweg nehme, mit toller RomanDoku statt smart agil lösungsorienrtiet.
https://github.modevel.de/poc/canary/
VG Martin
Stefan #
Geschrieben am 24.06.2021 um 09:41
Ich glaube es ist an der Zeit dass wir uns von den Frameworkvergleichen verabschieden weil es absolut nichts bringt. Die „großen 3“ konvergieren eh alle irgendwie zu dem Gleichen hin, halt in unterschiedlichen Geschmacksrichtungen. Wenn du Jahrzehnte lang Spring Applikationen oder auf ASP.NET unterwegs bist liegt dir vielleicht Angular mehr, wenn du viel PHP gemacht hast kommst du vielleicht eher zu React. Oder halt Vue, wenn du viel traditionelle FE Entwicklung gemacht hast. Oder anderer Hintergrund, andere Richtung. Was auch immer. Es spielt keine Rolle. Features sind eh überall gleich, und tatsächlich auch die Produktivität die Entwickler:innen damit erreichen. Siehst du das nicht so? Dann ist vielleicht Geschmacksrichtung B besser für dich. Andere Entwickler:innen sehen das vielleicht anders.
Wenn du das Framework für deine Geschmacksrichtung gefunden hast, und du immer noch unsicher bist ob es das richtige ist, dann kommen die wichtigen Fragen:
1. Wie stark ist das Ökosystem? Gibt es genug Bibliotheken in ausreichender Qualität um deine Dienste zu erfüllen. Brauchst du das überhaupt?
2. Fühlst du dich wohl in der Community? Das ist fast das wichtigste. Bryan Cantrill sagt ganz richtig dass man heute mit einer Technologie unabdingbar auch eine Community einkauft. Kannst du dich mit deren Werten identifizieren?
3. Gibt dir die Roadmap ausreichende Stabilität für längerfristige Projekte? Falls du denn solche hast und die Stabilität brauchst.
Ich bin gerade in einem Projekt wo wir eine Menge Entwickler von Angular auf React bringen. Nicht weil Angular nicht ausreicht, ganz im Gegenteil, das sind ca. 300 Java Entwickler die sich sehr in der Angular Welt wohlfühlen und es vor allem sehr schätzen dass der Code von vor 3 Jahren auch mit der aktuellen Framework-Version kompiliert. Wir haben uns für React entschieden weil wir bei dem Projekt vor allem von einer großen, langfristigen Codebasis auf viele kleine Applikationen mit geringerer Halbwertszeit wechseln, und da vor allem vom reichhaltigen React Ökosystem profitieren. Die Community hätte uns die Entscheidung fast vermiest ;-)
Thomas #
Geschrieben am 27.06.2021 um 13:54
@Stefan, danke für deine Worte. Ich bin da ganz deiner Meinung.
RSS-Feed zu diesem Beitrag
Kommentare sind für diesen Beitrag geschlossen.