Menü
Developer

Angular Connect: Verbreitung, Community und Zukunft des Frameworks

Die erste Keynote der größten europäischen Angular-Konferenz unterstrich die weite Verbreitung des Frameworks. Aber auch der neue Ivy-Compiler war ein Thema.

Von
vorlesen Drucken Kommentare lesen
Angular Connect: Verbreitung, Community und Zukunft des Frameworks

In seiner Keynote auf der Angular Connect 2018 hat Igor Minar, Team Lead im Angular-Team, heute in London zunächst über den Einsatz des SPA-Frameworks (Single Page Applications) bei Google berichtet. Er hat gezeigt, dass der Suchmaschinenanbieter über 600 Angular-Anwendungen betreibt – darunter einige bekannte Anwendungen wie Firebase, Google Analytics oder die Google Cloud Platform.

Auch außerhalb von Google ist Angular laut Minar populär: Dazu verwies er unter anderem auf eine Umfrage von Stack Overflow, wonach Angular das am meisten genutzte Frontend-Framework ist. Außerdem zeigte er, dass die Anzahl an Entwicklern, die Angular nutzen, kontinuierlich steigt. Dafür greift das Angular-Team auf die Nutzerstatistiken der Online-Dokumentation zurück. Demnach setzten im Juni dieses Jahres rund 1.400.000 Entwickler das SPA-Framework ein. Das entspricht einem Zuwachs von 40 Prozent gegenüber Ende 2017.

Rund 140.000 Entwickler nutzen im Juni 2018 Angular.

Einen großen Teil der Keynote widmete Minar den Themen Werte und Diversität. Neben der Anwendungsentwicklung liegt dem Team auch die Community am Herzen. Ziel sei es, eine Community zu schaffen, in der sich jeder willkommen fühlt. Dazu verwies er auf Initiativen wie ngGirls, Mentoring auf Konferenzen, den Code of Conduct des Teams, aber auch auf die weltweiten Angular-Meetups.

Ebenfalls im Fokus stand der Status quo des Frameworks. Eines der Ziele 2018 sei es gewesen, die Nutzung von Angular und die Aktualisierung auf neue Versionen zu vereinfachen. Dazu bietet das Command-Line Interface (CLI) nun die Anweisungen ng add und ng update. Erste bindet eine neue Bibliothek ein und erzeugt auch den nötigen Boilerplate-Code; letztere aktualisiert sämtliche Bibliotheken, darunter ebenfalls Angular und CLI, auf die neueste Version.

Neben dem Herunterladen der neuesten Versionen kann ng update auch ein Refactoring des Programmcodes vornehmen, um geänderte APIs zu adressieren. Ein Update von Angular samt CLI und der Steuerelement-Bibliothek Material erfolgt demnach mit nur drei Anweisungen:

ng update @angular/cli
ng update @angular/core
ng update @angular/material

Außerdem verwies der Keynote-Sprecher auf die neue Angular Console, die die Nutzung des Frameworks vereinfachen soll. Dabei handelt es sich um ein grafisches User Interface zum Erzeugen von Angular-Projekten und deren Bestandteilen. Aber auch der auf Visual Studio Code basierende Online-Editor Stackblitz soll die Einstiegshürde senken.

Die Angular Console unterstützt beim Generieren von Projekten und deren Bestandteilen.

Um Entwicklern den Umstieg auf Angular zu vereinfachen, habe das Angular-Team in der letzten Zeit am Migration Assistant gearbeitet. Er analysiert ein AngularJS-1.x-Projekt und erzeugt Vorschläge für die Migration. Ein weiteres Ziel sei es, die Zusammenarbeit mit Designern zu verbessern. Dazu hat das Team die Initiative Angular for Designers ins Leben gerufen. Ein Produkt, das daraus entstanden ist, ist CoDesign. Es ermöglicht Designern, Prototypen mit Angular zu erzeugen.

Während Angular seine Stärken derzeit vor allem bei Anwendungen ausspielt, möchte das Team damit auch in andere Bereiche vordringen. Beispiele seien Websites, aber auch die Integration von Angular-Komponenten in Produkten wie SharePoint.

Hierzu setzt das Team auf Angular Elements, das es erlaubt, Angular-Komponenten als Framework-neutrale Web Components zu veröffentlichen, sowie auf Ivy, einen neuen Compiler und Renderer. Letzterer erzeugt deutlich kleinere Bundles und unterstützt Tree Shaking besser. Das bedeutet, dass Build-Werkzeuge nicht benötigte Framework-Bestandteile einfacher identifizieren und entfernen können sollen.

Um die Möglichkeiten von Ivy zu unterstreichen, verwies Minar erneut auf die bereits im April auf der ngconf veröffentlichten Zahlen, wonach eine komprimierte Hallo-Welt-Anwendung dank Ivy nur mehr 2,7 KByte benötigt statt der derzeitig beanspruchten 36 KByte.

Dabei betonte Minar auch, dass die Einführung von Ivy keine großen Veränderungen mitbringen soll. Das sei für Google von hoher Bedeutung. Deshalb befindet sich Ivy derzeit bei Google in einer Verifikationsphase. Im Rahmen dieser möchten sie Ivy auch als Labs-Projekt veröffentlichen, um Entwicklern außerhalb von Google damit erste Experimente zu erlauben, bevor das Team es schließlich veröffentlicht. Einen konkreten Zeitrahmen nannte Minar dafür nicht.

Bazel ist ein weiteres in der Keynote vorgestelltes Lab-Projekt. Es ist die Open-Source-Variante des bei Google eingesetzten Build-Werkzeugs, das für eine gute Performance bekannt ist. Dafür setzt Bazel konsequent auf inkrementelle Builds. Das bedeutet, dass nur die zuletzt durchgeführten Änderungen neu gebaut werden können. Das soll vor allem die Arbeit mit großen Codebasen vereinfachen. Bazel beschränkt sich nicht nur auf JavaScript, sondern kann auch mit anderen Programmierumgebungen und -sprachen umgehen und so ein Gesamtsystem bestehend aus clientseitigen und serverseitigen Teilen bauen.

Manfred Steyer
ist Trainer und Berater mit Fokus auf Angular sowie Google Developer Expert. Er schreibt für O'Reilly, das deutsche Java-Magazin und heise Developer. In seinem aktuellen Buch zu Angular behandelt er die vielen Seiten des populären JavaScript-Frameworks aus der Feder von Google.
(Manfred Steyer) / (bbo)