Cross-Plattform-Entwicklung: NativeScript 7 poliert JavaScript-Anbindung auf

Das Framework zur plattformübergreifenden Entwicklung zielt künftig auf ES2017+ statt dem bisherigen gemeinsamen Nenner ES5.

In Pocket speichern vorlesen Druckansicht
Cross-Plattform-Entwicklung: NativeScript 7 poliert JavaScript-Anbindung auf

(Bild: Andrey Suslov/Shutterstock.com)

Lesezeit: 2 Min.
Von
  • Rainald Menge-Sonnentag
Inhaltsverzeichnis

Die Progress-Tochter Telerik hat NativeScript 7.0 veröffentlicht. Das Cross-Plattform-Framework zielt im aktuellen Release vor allem auf eine bessere Integration mit aktuellen JavaScript-Standards und eine einheitlichere Konfiguration. Außerdem setzt es neuerdings auch unter iOS auf die V8-Engine.

Bisher hatte NativeScript ECMAScript 5 (ES5) im Fokus, den letzten JavaScript-Standard ohne Jahreszahl, der bereits 2009 verabschiedet wurde. Neuere Features ließen sich mit NativeScript zwar über TypeScript-Projekte umsetzen, aber NativeScript hat den Source letztlich stets in ES5-Code konvertiert. Version 7 erstellt nun ES2017-Code und ermöglicht die Anbindung an neuere JavaScript-Standards, sofern die jeweiligen JavaScript-Engines für Android und iOS sie unterstützen.

Direkt betroffen sind unter anderem Projekte, die auf async-await-Konstrukte zur nebenläufigen Programmierung setzen. Auch JavaScript-Klassen lassen sich direkt verwenden, ohne die entsprechenden class-Blöcke zu transpilieren.

Für TypeScript-Projekte führt NativeScript den @NativeClass() Decorator ein, der erweiterte native Klassen von iOS beziehungsweise Android kennzeichnet. Da er in den @nativescript/core Globals definiert ist, ist kein expliziter Import notwendig.

Während die NativeScript-Laufzeitumgebung unter Android bereits seit geraumer Zeit auf die V8-Engine setzt, hat sie bisher unter iOS das JavaScriptCore-Framework verwendet. Das hat zum einen den Vorteil, dass sich die neueren JavaScript-Standards einheitlich verwenden lassen, zum anderen soll es die Verwaltung der beiden Runtimes unter Android und iOS vereinfachen.

Wer für Apples mobiles Betriebssystem weiterhin JavaScriptCore nutzen möchte oder mit V8 auf Probleme stößt, kann die tns-ios Runtime unter iOS nutzen.

Nennenswert ist zudem, dass alle Konfigurationsparameter nun in der Datei "nativescript.config.ts" stehen. Die bisherige "nsconfig.json" entfällt damit ebenso wie die Notwendigkeit, weitere Konfigurationen in der "package.json"-Datei im Root der Anwendung und einer zusätzlichen solchen Datei im "src"-Verzeichnis des Projekts anzulegen.

Weitere Neuerungen in NativeScript 7 lassen sich dem Blogbeitrag des Technical Steering Committee (TSC) entnehmen. Im Befehlsfenster kennt das Framework neben dem neuen Standardbefehl ns weiterhin nsc für diejenigen, "die nicht aufhören können an javac zu denken" und es als Native Script Compiler sehen. Aus historischen Gründen funktioniert zudem tns als dritter Alias.

(rme)