© Excellent backgrounds/Shutterstock.com
AngularJS und TypeScript

Der Beginn einer wunderbaren Freundschaft …


AngularJS ist ein beliebtes JavaScript-Framework von Google, das Direktiven, Data Binding, MV* und vieles mehr bietet. AngularJS ist auch deswegen beliebt, weil es bekannte Paradigmen wie Dependency Injection bietet und man dadurch sehr gut testgetrieben entwickeln kann. Allerdings gibt es verschiedene grundsätzliche Probleme mit der Entwicklung von großen strukturierten Anwendungen in JavaScript. Hier hilft TypeScript. TypeScript ist eine JavaScript-Erweiterung von Microsoft, die JavaScript um optionale statische Typprüfung, Interfaces, Klassen, Module und vieles mehr erweitert. In diesem Artikel werden einige Grundlagen von AngularJS 1.x erklärt und beschrieben, wie man AngularJS wunderbar zusammen mit TypeScript verwenden kann. Am Ende des Artikels gibt es noch eine kurze Preview auf die aktuelle Alphaversion von ­AngularJS 2.0, die ja bekannterweise auch in TypeScript entwickeln wird.

Ich beschäftige mich seit knapp fünfzehn Jahren mit UI-Technologien und habe viele Erfahrungen mit Rich-Client-Plattformen gesammelt. Seit einigen Jahren sehe ich einen Trend, dass viele UIs, die früher ganz klar mit nativen Rich-Client-Plattformen entwickelt wurden, zunehmend mit Webtechnologie realisiert werden. Das liegt zum einen daran, dass mit HTML5 und CSS3 sehr attraktive UIs mit einer guten Usability gestaltet werden können, zum anderen aber auch daran, dass JavaScript in den letzten Jahren einen wirklich enormen Performance-Boost bekommen hat. Mittlerweile läuft JavaScript in allen gängigen Browsern recht flott.

Aus der Rich-Client-Entwicklung sind Patterns wie MVC (Model/View/Controller), MVP (Model View Presenter, in den Ausprägungen Passive View und Supervising Controller), MVVM (Model View ViewModel) schon seit vielen Jahren bekannt. Im JavaScript-Bereich sind in den letzten Jahren auch viele Bibliotheken und Frameworks entstanden, die diese Patterns implementieren und Vorgaben bezüglich Architektur und Struktur machen. Dabei sind viele Bibliotheken auf so genannte Single Page Applications (SPA) ausgelegt, also Webapplikationen, die im Prinzip nur aus einer einzigen (parametrisierten) Webseite bestehen. Prominente Beispiele für JavaScript-Frameworks im MV*-Umfeld sind Ember [1], Backbone.js [2] oder auch Facebooks React [3], das eher das V von MVC realisiert, und natürlich AngularJS, auf das ich in diesem Artikel ausführlich eingehe.

Warum AngularJS?

Ich kenne viele (größere) Firmen, die eine ganze Reihe von JavaScript-Bibliotheken nach verschiedenen Gesic...

Exklusives Abo-Special

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang