In een recente ontwikkeling heeft Microsoft geëxperimenteerd met DeviceScript technologie, die de kracht van TypeScript naar Internet of Things (IoT) apparaten brengt. Door DeviceScript in hun programmering op te nemen, kunnen ontwikkelaars nu TypeScript gebruiken op microcontroller-gebaseerde apparaten met beperkte bronnen, zoals de ESP32 en RP2040 hardwareplatforms.
Microsoft Research introduceerde het open-source DeviceScript project in mei. Als subset van TypeScript compileert het naar aangepaste VM-bytecode die is ontworpen om te draaien in beperkte omgevingen. De VM zelf compileert tot 10 KB aan code, terwijl de toevoeging van de floating-point bibliotheek en Jacdac SDK de grootte met 30 KB vergroot. De Jacdac-technologie van Microsoft is een robuuste hardware- en softwarestack voor microcontrollers en randapparatuur.
Om aan de slag te gaan met DeviceScript, kunnen ontwikkelaars de instructies volgen op de website van het project. Met een speciale uitbreiding voor de Visual Studio Code editor kunnen gebruikers DeviceScript code bouwen, implementeren, debuggen en traceren. Daarnaast bevat de extensie bewakingsmogelijkheden die apparaatbeheer vergemakkelijken. In combinatie met containers zoals Docker stelt de DeviceScript command line interface (CLI) ontwikkelaars in staat om programma's te compileren vanuit de IDE van hun voorkeur.
Hoewel DeviceScript hetzelfde werkt als TypeScript, worden niet alle functies ondersteund. Dit komt door de beperkte middelen die beschikbaar zijn voor de DeviceScript runtime, wat leidt tot verschillen zoals strings die Unicode zijn in plaats van UTF-16, agressieve tree shaking en de afwezigheid van subnormalen. De semantiek van JavaScript blijft echter over het algemeen behouden.
Bij het werken met DeviceScript hebben ontwikkelaars toegang tot sensoren, actuatoren of andere hardwarecomponenten door gebruik te maken van Jacdac services. Sensoren fungeren als servers, terwijl scripts clients maken om interactie mogelijk te maken. Ontwikkelaars maken clients aan, ook wel rollen genoemd, voor elke vereiste service om te communiceren met sensoren of servers. Vervolgens kunnen ze tools zoals npm, Yarn of pnpm gebruiken om DeviceScript pakketten te distribueren en te gebruiken.
AppMasterHet no-code platform van .io vult het low-code karakter van DeviceScript aan, waardoor gebruikers webapplicaties, back-end applicaties en mobiele apps kunnen ontwikkelen met behulp van intuïtieve visuele elementen. Door AppMaster als onderdeel van hun toolkit op te nemen, kunnen ontwikkelaars hun productiviteit en de algehele efficiëntie van hun projecten verhogen.