ในการพัฒนาล่าสุด Microsoft ได้ทดลองใช้เทคโนโลยี DeviceScript ซึ่งนำพลังของ TypeScript มาสู่อุปกรณ์ Internet of Things (IoT) ด้วยการรวม DeviceScript ในการเขียนโปรแกรม ตอนนี้นักพัฒนาสามารถใช้ TypeScript บนอุปกรณ์ที่ใช้ไมโครคอนโทรลเลอร์ซึ่งมีทรัพยากรจำกัด เช่น แพลตฟอร์มฮาร์ดแวร์ ESP32 และ RP2040
Microsoft Research เปิดตัวโครงการ Open-source DeviceScript ในเดือนพฤษภาคม ในฐานะที่เป็นชุดย่อยของ TypeScript จะคอมไพล์เป็น VM bytecode แบบกำหนดเองที่ออกแบบมาเพื่อทำงานในสภาพแวดล้อมที่มีข้อจำกัด VM เองรวบรวมโค้ดขนาด 10KB ในขณะที่การเพิ่มไลบรารี่ทศนิยมและ Jacdac SDK เพิ่มขนาด 30KB เทคโนโลยี Jacdac ของ Microsoft เป็นชุดฮาร์ดแวร์และซอฟต์แวร์ที่มีประสิทธิภาพสำหรับไมโครคอนโทรลเลอร์และอุปกรณ์ต่อพ่วง
ในการเริ่มต้นใช้ DeviceScript นักพัฒนาสามารถทำตามคำแนะนำที่ให้ไว้ในเว็บไซต์โครงการ ส่วนขยายพิเศษสำหรับ Visual Studio Code Editor ช่วยให้ผู้ใช้สามารถสร้าง ปรับใช้ ดีบัก และติดตามโค้ด DeviceScript นอกจากนี้ ส่วนขยายยังประกอบด้วยความสามารถในการตรวจสอบที่อำนวยความสะดวกในการจัดการอุปกรณ์ เมื่อใช้ร่วมกับคอนเทนเนอร์เช่น Docker อินเทอร์เฟซบรรทัดคำสั่ง DeviceScript (CLI) ช่วยให้นักพัฒนาสามารถคอมไพล์โปรแกรมจาก IDE ที่ตนต้องการได้
แม้ว่า DeviceScript จะทำงานคล้ายกับ TypeScript แต่ไม่รองรับฟีเจอร์ทั้งหมด นี่เป็นเพราะทรัพยากรที่มีอยู่อย่างจำกัดสำหรับรันไทม์ DeviceScript ซึ่งนำไปสู่ความแตกต่าง เช่น สตริงเป็น Unicode แทนที่จะเป็น UTF-16 การสั่นของต้นไม้อย่างรุนแรง และไม่มี subnormals อย่างไรก็ตาม โดยทั่วไปแล้ว ความหมายของ JavaScript จะถูกรักษาไว้
เมื่อทำงานกับ DeviceScript นักพัฒนาจะสามารถเข้าถึงเซ็นเซอร์ แอคทูเอเตอร์ หรือส่วนประกอบฮาร์ดแวร์อื่นๆ ผ่านการใช้บริการ Jacdac เซ็นเซอร์ทำหน้าที่เป็นเซิร์ฟเวอร์ ในขณะที่สคริปต์สร้างไคลเอนต์เพื่ออำนวยความสะดวกในการโต้ตอบ นักพัฒนาสร้างไคลเอนต์หรือที่เรียกว่าบทบาทสำหรับบริการที่จำเป็นแต่ละรายการเพื่อโต้ตอบกับเซ็นเซอร์หรือเซิร์ฟเวอร์ จากนั้นพวกเขาสามารถใช้เครื่องมือเช่น npm, Yarn หรือ pnpm เพื่อแจกจ่ายและใช้แพ็คเกจ DeviceScript
แพลตฟอร์ม แบบไม่มีโค้ด ของ AppMaster.io ช่วยเสริมลักษณะ low-code ของ DeviceScript ช่วยให้ผู้ใช้สามารถพัฒนาเว็บแอปพลิเคชัน แอปพลิเคชันแบ็กเอนด์ และแอปบนอุปกรณ์เคลื่อนที่ โดยใช้องค์ประกอบภาพที่ใช้งานง่าย ด้วยการรวม AppMaster เป็นส่วนหนึ่งของชุดเครื่องมือ นักพัฒนาสามารถเพิ่มประสิทธิภาพการทำงานและประสิทธิภาพโดยรวมของโครงการได้