최근 개발에서 Microsoft는 TypeScript 의 기능을 IoT(사물 인터넷) 장치에 제공하는 DeviceScript 기술을 실험하고 있습니다. 프로그래밍에 DeviceScript 통합함으로써 개발자는 이제 ESP32 및 RP2040 하드웨어 플랫폼과 같은 제한된 리소스로 마이크로 컨트롤러 기반 장치에서 TypeScript 사용할 수 있습니다.
Microsoft Research는 5월에 오픈 소스 DeviceScript 프로젝트를 도입했습니다. TypeScript 의 하위 집합으로 제한된 환경에서 실행되도록 설계된 사용자 지정 VM 바이트코드로 컴파일됩니다. VM 자체는 10KB의 코드로 컴파일되는 반면 부동 소수점 라이브러리와 Jacdac SDK를 추가하면 크기가 30KB 증가합니다. Microsoft의 Jacdac 기술은 마이크로컨트롤러 및 주변 장치를 위한 강력한 하드웨어 및 소프트웨어 스택입니다.
DeviceScript 시작하기 위해 개발자는 프로젝트 웹 사이트에 제공된 지침을 따를 수 있습니다. Visual Studio Code 편집기의 특수 확장을 통해 사용자는 DeviceScript 코드를 빌드, 배포, 디버그 및 추적할 수 있습니다. 또한 확장 기능은 장치 관리를 용이하게 하는 모니터링 기능으로 구성됩니다. Docker와 같은 컨테이너와 함께 DeviceScript CLI(명령줄 인터페이스)를 사용하면 개발자가 선호하는 IDE에서 프로그램을 컴파일할 수 있습니다.
DeviceScript TypeScript 와 유사하게 작동하지만 모든 기능이 지원되는 것은 아닙니다. 이는 DeviceScript 런타임에 사용할 수 있는 리소스가 제한되어 문자열이 UTF-16이 아닌 유니코드, 공격적인 트리 흔들림, 준정규가 없는 것과 같은 차이점이 있기 때문입니다. 그러나 JavaScript의 의미 체계는 일반적으로 유지됩니다.
DeviceScript 로 작업할 때 개발자는 Jacdac 서비스를 사용하여 센서, 액추에이터 또는 기타 하드웨어 구성 요소에 액세스할 수 있습니다. 센서는 서버 역할을 하는 반면 스크립트는 클라이언트를 설정하여 상호 작용을 용이하게 합니다. 개발자는 센서 또는 서버와 상호 작용하는 데 필요한 각 서비스에 대해 역할이라고도 하는 클라이언트를 만듭니다. 그런 다음 npm, Yarn 또는 pnpm과 같은 도구를 활용하여 DeviceScript 패키지를 배포하고 사용할 수 있습니다.
AppMaster.io의 코드 없는 플랫폼은 DeviceScript 의 low-code 특성을 보완하여 사용자가 직관적인 시각적 요소를 사용하여 웹 애플리케이션, 백엔드 애플리케이션 및 모바일 앱을 개발할 수 있도록 합니다. 툴킷의 일부로 AppMaster 포함함으로써 개발자는 생산성과 프로젝트의 전반적인 효율성을 높일 수 있습니다.