Moin moin und hallo,

und hurra, hurra Angular 2 ist endlich da.


Angular 2 finaler Release

Nach langer zwei Jahren Entwicklungszeit und vielen, vielen Release Candidates, ist Angular 2 endlisch in erster finaler Verison erschienen ;)

Was ist denn alles neu?

Das möchte ich im Detail in einem späteren Artikel aufdröseln, zusammen gefasst:

  • Die primäre Sprache ist nun TypeScript, und nicht mehr JavaScipt, was sich leider deutlich in der offiziellen Dokumentation abzeichnet
  • Neue Frontend-Synthax für Modell-Binding und Events
    <ul>
    <li *ngFor="let hero of heroes" (click)="selectHero(hero)">
      {{hero.name}}
    </li>
    </ul>
  • Neue Komponenten-basierte Software-Architektur (Observer Pattern lässt grüßen) Komponenten Baum
  • Neue Versionierungs Semantik
    1. Die MAJOR Version wird bei inkompatibler API Änderungen erhöht
    2. Die MINOR Version wird ehröht wenn neue, abwärtskompatible Funktion hinzukommt
    3. Die PATCH Version erhöhrt sich bei abwärtskompatibler Bugfixes

Leider ist die neue Version, entsprechend der neuen Semantik, nicht abwärtskompatibel.

Fazit

Man kann sich darüber streiten ob man die neue Sythax oder die Kompontenstruktur notwendig war, aber ein, meiner Meinung nach, großer Fehler ist das festsetzen von TypeScript als ihre primäre Sprache.

Falls es nicht bekannt sien sollte, TypeScript ist eine Sprache, die am Ende in JavaScript (per Transpiler) übersetzt und von MicroSoft entwickelt wird.

Dieser zusätzliche Transpiler sorgt dafür, das man eine zusätzliche, nicht notwendige Abhängigkeit schafft, die keinen wirklichen Mehrwert bietet, wenn man sich vor Augen führt, dass ES6 gerade sich etabliert und viele TypeScript Funktionen obsolet machen wird.

Angular 2 lässt sich aber auch weiterhin mit JavaScript nativ nutzen, nur ist man, wie schon erwähnt, als Einsteiger komplett auf sich selbst gestellt, da die Dokumentation quasi nicht existent ist.

Diesen Umstand möchte ich in Zukunft in einigen Artikel entgegen kämpfen, weil ich auch weiterhin JavaScript als Sprache der Wahl sehe.

Wenn man 100% Typsicher entwickeln möchte und soweit sich an Java annähern will, wie es halt geht, dann sollte man sich in jedem Fall das Google Web Toolkit anschauen. Das hat einen deutlich ausgreifteren Ansatz, ebenfalls mit Transpiler, als Angular 2 und hat sich unzähligen Projekten bewährt.

Nur entwickelt man direkt in Java und kann dabei auf einen großen Werkzeugkasten (IDE, Frameworks, etc.) zurückgreifen.


#### In diesem Sinne, bis demnächst!