Manfred Steyer Selbstständig

Angular 5 bringt einige nette Abrundungen, die bestimmte Szenarien wie Server-Side Rendering, Internationalisierung oder Progressive Web-Apps unterstützen. 

Wie auch schon beim Übergang von Version 2 auf 4 gestaltet sich der Sprung auf Angular 5 sehr evolutionär. Neue Möglichkeiten in Bereichen wie Internationalisierung, Performance oder Progressive Web Apps runden den Leistungsumfang ab. Die neue Version ist Anfang November erschienen.

Anfang November 2017 war es wieder soweit: Das nächste Major-Release von Angular wurde gemeinsam mit einer neuen Version des Angular CLI veröffentlicht. Auch wenn ein Major-Release mit Breaking Changes einhergehen kann, gestaltet sich der Umstieg von Version 4 auf 5 sehr evolutionär. In vielen Fällen wird er sogar fast unbemerkt vonstattengehen. In diesem Artikel gehe ich zunächst auf die Ideen hinter dem Releaseplan von Angular ein und zeige dann, welche Neuerungen Angular 5 bringt. Da mit jedem Angular-Release auch zahlreiche kleinere Features einhergehen, gibt es hier ausdrücklich keinen Anspruch auf Vollständigkeit. Wer sich die hier verwendeten Beispiele etwas genauer ansehen möchte, findet sie auf meiner GitHub-Page.

Releaseplan

Gemäß des im Dezember 2016 veröffentlichten Plans gibt es zweimal jährlich ein neues Major-Release von Angular. Wenngleich das die Möglichkeit für Breaking Changes eröffnet, sollten sich diese jedoch im Zaum halten. Ein Beispiel dafür ist, dass beim Umstieg auf eine neue Angular-Version auch TypeScript zu aktualisieren ist. Da aber gerade im UI-Umfeld die Zeit nicht stillsteht, hat sich das Angular-Team eine Deprecation Policy auferlegt. Demnach können mit jedem Major-Release Konzepte als veraltet erklärt werden. Die Entwickler haben dann mindestens bis zur nächsten Major-Version Zeit, diese durch neue Konzepte zu ersetzen, sofern sie migrieren wollen. Auch das war bis jetzt selten eine Hexerei. Beispielsweise wurde die Klasse OpaqueToken durch InjectionToken<T> ersetzt oder aus dem Element template wurden, um Konflikte zu vermeiden, ng-template. Teams, denen die halbjährlichen Zyklen zu kurz sind, können stattdessen auch auf Long-Time-Support-Versionen von Angular setzen – diese werden jeweils für ein Jahr gepflegt. Die erste dieser Versionen ist 4.x. Somit wird sowohl dem Wunsch mancher Teams nach weniger Veränderung als auch der rasanten Weiterentwicklung von UI-Technologien Rechnung getragen.

„HttpClient“

Apropos Deprecations: Die wohl bekannteste Deprecation in Version 5 ist der Service Http, der seit den ersten Tagen von Angular den Zugriff auf das Backend ermöglicht. Ihm wurde bereits mit Version 4.3 ein mächtigerer HttpClient zur Seite gestellt. Da beide ein sehr ähnliches API haben, ist die Umstellung nicht allzu schwierig. Dafür erhält man mit dem HttpClient die Möglichkeit, sich über den Fortschritt von Up- und Downloads informieren zu lassen, und erhebliche Vereinfachungen bei Unit-Tests. Das wohl wichtigste Feature gegenüber dem Vorgängers ist jedoch das aus der Welt von AngularJS 1.x bekannte Interceptor-Konzept. Wie der Name schon vermuten lässt, erlaubt es das Abfangen von Anfragen. Zentral registrierte Interceptors können somit ausgehende Anfragen, aber auch empfangene Antworten manipulieren. Anwendungsfälle dafür sind zum Beispiel das Hinzufügen von Securityheadern, Caching oder das Unterstützen weiterer Übertragungsformate jenseits von JSON.

Den vollständigen Artikel lesen Sie in der Ausgabe:

Windows Developer 1.18 - "Angular 5"

Alle Infos zum Heft
579821394Angular 5 im Überblick: Was gibt es neues?
X
- Gib Deinen Standort ein -
- or -