Num desenvolvimento recente, a Microsoft tem estado a experimentar a tecnologia DeviceScript, que traz o poder do TypeScript para os dispositivos da Internet das Coisas (IoT). Ao incorporar a DeviceScript na sua programação, os programadores podem agora utilizar a TypeScript em dispositivos baseados em microcontroladores com recursos limitados, como as plataformas de hardware ESP32 e RP2040.
A Microsoft Research apresentou o projecto de código aberto DeviceScript em Maio. Como um subconjunto do TypeScript, compila um bytecode VM personalizado concebido para ser executado em ambientes limitados. A própria VM compila 10 KB de código, enquanto a adição da biblioteca de vírgula flutuante e do SDK Jacdac aumenta o tamanho em 30 KB. A tecnologia Jacdac da Microsoft é uma pilha robusta de hardware e software para microcontroladores e periféricos.
Para começar a utilizar o DeviceScript, os programadores podem seguir as instruções fornecidas no sítio Web do projecto. Uma extensão especial para o editor Visual Studio Code permite aos utilizadores construir, implementar, depurar e rastrear o código DeviceScript. Além disso, a extensão inclui capacidades de monitorização que facilitam a gestão de dispositivos. Em conjunto com contentores como o Docker, a interface de linha de comandos (CLI) DeviceScript permite aos programadores compilar programas a partir do seu IDE preferido.
Embora o DeviceScript funcione de forma semelhante ao TypeScript, nem todos os recursos são suportados. Isso se deve aos recursos limitados disponíveis para o tempo de execução do DeviceScript, levando a diferenças como strings sendo Unicode em vez de UTF-16, agitação agressiva da árvore e a ausência de subnormais. No entanto, a semântica do JavaScript é geralmente mantida.
Ao trabalhar com DeviceScript, os programadores podem aceder a sensores, actuadores ou outros componentes de hardware através da utilização de serviços Jacdac. Os sensores funcionam como servidores, enquanto os scripts estabelecem clientes para facilitar a interacção. Os programadores criam clientes, também conhecidos como funções, para cada serviço necessário para interagir com sensores ou servidores. Eles podem então utilizar ferramentas como npm, Yarn ou pnpm para distribuir e consumir pacotes DeviceScript.
AppMasterA plataforma sem código do .io complementa a natureza low-code do DeviceScript, permitindo aos utilizadores desenvolver aplicações Web, aplicações de backend e aplicações móveis, utilizando elementos visuais intuitivos. Ao incluir o AppMaster como parte do seu conjunto de ferramentas, os programadores podem aumentar a sua produtividade e a eficiência global dos seus projectos.