Im Interview mit Thomas Bandt (69 Grad)

TypeScript hat gute Chancen auf eine Verbreitung auch außerhalb des Microsoft-Kosmos
Kommentare

Mit TypeScript hat Microsoft eine neue Programmiersprache vorgestellt, die JavaScript erweitert und für komplexere Anwendungen aufrüstet. Was die Entwicklerproduktivität angeht, soll TypeScript nahezu an Hochsprachen wie C# heranreichen, hinter der mit Anders Hejlsberg übrigens derselbe Architekt steht. In der breiten Sphäre der Webentwickler wurde TypeScript mit großem Interesse aufgenommen – allerdings mischte sich unter die Begeisterung auch eine gehörige Portion Skepsis, ob TypeScript sich wirklich als allgemeine Websprache durchsetzen können wird. Diese und mehr Fragen haben wir dem .NET-Entwickler und JavaScript-Experten Thomas Bandt gestellt.


src=“http://entwickler.com/develop/zonen/magazine/onlineartikel/pspic/picture_file/85/thomas_ban507296155248f.jpg?1349686805″ hspace=“10″ vspace=“5″ alt=““>

dot.NET: Mit TypeScript legt Microsoft seine eigene JavaScript-Erweiterung vor. Wie würden Sie die Sprache charakterisieren?

Thomas Bandt: Es ist und bleibt JavaScript, ergänzt um lang vermisste Features wie statische Typisierung, Klassen, Interfaces oder Namespaces. Das Schöne daran ist, dass man nicht eine völlig neue Syntax lernen oder bereits vorhandenen Code portieren bzw. wegwerfen muss: TypeScript lässt sich wunderbar in vorhandene Applikationen integrieren oder zusammen mit JavaScript-Bibliotheken wie jQuery oder Raphaël verwenden.

dot.NET: Nun war JavaScript-Entwicklung in der Microsoft-Welt ja schon vorher möglich und bot in Visual Studio und mit Tools wie ReSharper bereits einige Annehmlichkeiten. Wo lagen aus Ihrer Sicht dennoch die Probleme bei der konventionellen JavaScript-Entwicklung, die TypeScript nun beheben könnte?

Thomas Bandt: Wer beispielsweise den Client-Teil mit JavaScript und den Server-Part mit ASP.NET MVC und C# entwickelt, merkt selbst innerhalb der eigenen Anwendung immer dann die Unterschiede deutlich, wenn er jeweils „die Seite wechselt“. IntelliSense und ReFactoring-Unterstützung sind bspw. mit Visual Studio und ReSharper in .NET-Anwendungen eine bequeme Selbstverständlichkeit. Möchte man IntelliSense in JavaScript bekommen, ist es auch mit ReSharper noch immer nicht in dem Maße möglich wie das bspw. mit C# der Fall ist, was einfach der Dynamik der Sprache geschuldet ist. Aus dem gleichen Grund enden z.B. auch Umbenennungen von Objekten in größeren JavaScript-Anwendungen immer bei einem vorsichtigen Suchen & Ersetzen. Da kann man es z.B. der Silverlight-Fraktion nicht übel nehmen, dass sie mit HTML5 nicht so recht warm wird…

dot.NET: JavaScript bietet dynamische Typisierung und einen Prototypen-Ansatz – TypeScript statische Typisierung. Verliert man in TypeScript dadurch nicht gerade auch die Vorteile, die eine dynamische Typisierung unzweifelhaft mitbringt?

Thomas Bandt: Das sehe ich nicht so. Da wo es geboten ist, kann man ja nach wie vor dynamisch arbeiten. In den allermeisten anderen Fällen wird einem die statische Typisierung jedoch das Leben enorm erleichtern. Wenn man mal ehrlich ist: nur sehr selten wird durch Unit-Tests eine Abdeckung von 100% erreicht. Bleibt also immer noch ein Restrisiko, dem man nur mit manuellem Testen begegnen kann. Manuelles Testen mit JavaScript heißt: F5 im Browser drücken. Ein „vorgeschalteter“ Compiler, der die größten Fehler bereits bemerkt, kann da nur gut sein.

dot.NET: In der Webwelt existieren ja bereits einige ähnlich gelagerte Sprachen, beispielsweise CoffeeScript oder auch die Google-Sprache Dart. Wo liegt bei TypeScript der Mehrwert, der der Sprache den entscheidenden Vorteil gegenüber den erwähnten Konkurrenten verschafft?

Thomas Bandt: Wie bereits eingangs erwähnt, nötigt TypeScript einen nicht dazu, eine gänzlich neue Syntax zu erlernen. Darüber hinaus lässt es sich in bestehende JS-Anwendungen genauso integrieren wie mit vorhandenen JS-Komponenten verwenden. Das sehe ich als enormen Vorteil, weil es keine neue Inselwelt schafft.

dot.NET: Wie würden Sie die Chancen von TypeScript einschätzen, tatsächlich eine echte Entwickler-Gemeinde um sich zu versammeln? Immerhin müssen Entwickler ja eine neue Sprache erlernen. Wird sich TypeScript auf die Microsoft-Welt beschränken oder möglicherweise sogar darüber hinaus Verbreitung finden?

Thomas Bandt: Wer JavaScript beherrscht und dazu vielleicht noch statisch typisierte Sprachen wie Java oder C#, der wird TypeScript sehr schnell schätzen. Darüber hinaus sehe ich den Lernaufwand als recht gering an, die gewonnene Produktivität dürfte diesen sehr schnell egalisieren. Das Schönste aus meiner Sicht: Microsoft hat hier nicht versucht, das Rad komplett neu zu erfinden, sondern einfach eine bestehende, etablierte und überall unterstützte Sprache um fehlende Funktionen ergänzt.

Da sie ebenfalls nicht den Fehler gemacht haben, es als Closed Source zu veröffentlichen, sehe ich durchaus gute Chancen auf eine Verbreitung auch außerhalb des Microsoft-Kosmos. Hier wird jedoch sehr vieles davon abhängen, wie gut das Tooling ist – also insbesondere auch in anderen Entwicklungsumgebungen und Editoren, wie z.B. WebStorm von Jetbrains.

Wir werden TypeScript bei 69 Grad jedenfalls ganz sicher in eigenen Projekten einsetzen.

dot.NET: Vielen Dank für das Interview!

Thomas Bandt ist Geschäftsführer bei der Münchener Agentur für Web- und App-Entwicklung 69° und entwickelt seit 1999 mit JavaScript.
Unsere Redaktion empfiehlt:

Relevante Beiträge

Meinungen zu diesem Beitrag

X
- Gib Deinen Standort ein -
- or -