Electron-Framework 06.06.2017, 14:22 Uhr

Jetzt mit TypeScript

Das NPM-Paket für das Framework Electron enthält nun in einer Definitionsdatei für TypeScript detaillierte Angaben zum Electron-API. Dies kann beim Entwickeln helfen, selbst wenn es sich nur um reines unkompliziertes JavaScript handelt.
(Quelle: 50889027)
TypeScript ist eine Open-Source-Sprache von Microsoft, die JavaScript um ein System statischer Typen erweitert. Die Entwicklergemeinschaft um die Sprache hat sich in den vergangenen Jahren schnell vergrößert und im Ranking der beliebten Programmiersprachen von Stack Overflow zu einem vorderen Platz für TypeScript geführt. Teams bei GitHub, Slack und Microsoft verwenden es, um skalierbare Electron-Apps zu schreiben.
Die Sprache unterstützt viele neuer Sprachmerkmale von JavaScript wie Klassen, Objektdestruktoren und Async/Await; das wirkliche Differenzierungsmerkmal sind allerdings die Typangaben. Das Deklarieren von Ein- und Ausgabeparametern in einer Anwendung kann Fehler reduzieren, da sich entsprechende Fehler schon beim Kompilieren bemerkbar machen; außerdem können die Typangaben auch als formale Deklaration die Arbeitsweise des Programms verdeutlichen.
Wenn Bibliotheken in JavaScript geschrieben werden, werden die Typen oft erst im Nachhinein „definiert“, wenn die Dokumentation dazu geschrieben wird. Methoden akzeptieren oft verschiedene Typen als dokumentiert sind oder eine Methode kann unsichtbare und nicht dokumentierten Einschränkungen haben, die zu Laufzeitfehlern führen können.

Diese Probleme löst TypeScript mit den Typangaben in den entsprechenden Definitionsdateien. Eine solche Datei beschreibt alle Funktionen einer Bibliothek mit ihren gewünschten Ein- und Ausgabetypen. Fügen Autoren ihrer Bibliothek dieser eine Definitionsdatei hinzu, so können die Anwender dieser Bibliothek das API direkt im Editor anhand dieser Typangaben verstehen und müssen dann die Dokumentation oft gar nicht zu Rate ziehen.
Viele populäre Projekte wie Angular, Vue.js, node-github – und nun auch Electron – kompilieren ihre eigenen Definitionsdateien und fügen sie ihren NPM-Paketen hinzu.


Das könnte Sie auch interessieren