Microsoft DeviceScript ํ๋ก์ ํธ๋ TypeScript๋ฅผ IoT ์ฅ์น๋ก ๊ฐ์ ธ์ต๋๋ค
Microsoft์ ์คํ์ ์ธ DeviceScript ๊ธฐ์ ์ TypeScript๋ฅผ IoT ์ฅ์น๋ก ํ์ฅํ๋ ๊ฒ์ ๋ชฉํ๋ก ํฉ๋๋ค.

์ต๊ทผ ๊ฐ๋ฐ์์ 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์์ ํ๋ก๊ทธ๋จ์ ์ปดํ์ผํ ์ ์์ต๋๋ค.
DeviceScriptTypeScript ์ ์ ์ฌํ๊ฒ ์๋ํ์ง๋ง ๋ชจ๋ ๊ธฐ๋ฅ์ด ์ง์๋๋ ๊ฒ์ ์๋๋๋ค. ์ด๋ DeviceScript ๋ฐํ์์ ์ฌ์ฉํ ์ ์๋ ๋ฆฌ์์ค๊ฐ ์ ํ๋์ด ๋ฌธ์์ด์ด UTF-16์ด ์๋ ์ ๋์ฝ๋, ๊ณต๊ฒฉ์ ์ธ ํธ๋ฆฌ ํ๋ค๋ฆผ, ์ค์ ๊ท๊ฐ ์๋ ๊ฒ๊ณผ ๊ฐ์ ์ฐจ์ด์ ์ด ์๊ธฐ ๋๋ฌธ์ ๋๋ค. ๊ทธ๋ฌ๋ JavaScript์ ์๋ฏธ ์ฒด๊ณ๋ ์ผ๋ฐ์ ์ผ๋ก ์ ์ง๋ฉ๋๋ค.
DeviceScript ๋ก ์์ ํ ๋ ๊ฐ๋ฐ์๋ Jacdac ์๋น์ค๋ฅผ ์ฌ์ฉํ์ฌ ์ผ์, ์ก์ถ์์ดํฐ ๋๋ ๊ธฐํ ํ๋์จ์ด ๊ตฌ์ฑ ์์์ ์ก์ธ์คํ ์ ์์ต๋๋ค. ์ผ์๋ ์๋ฒ ์ญํ ์ ํ๋ ๋ฐ๋ฉด ์คํฌ๋ฆฝํธ๋ ํด๋ผ์ด์ธํธ๋ฅผ ์ค์ ํ์ฌ ์ํธ ์์ฉ์ ์ฉ์ดํ๊ฒ ํฉ๋๋ค. ๊ฐ๋ฐ์๋ ์ผ์ ๋๋ ์๋ฒ์ ์ํธ ์์ฉํ๋ ๋ฐ ํ์ํ ๊ฐ ์๋น์ค์ ๋ํด ์ญํ ์ด๋ผ๊ณ ๋ ํ๋ ํด๋ผ์ด์ธํธ๋ฅผ ๋ง๋ญ๋๋ค. ๊ทธ๋ฐ ๋ค์ npm, Yarn ๋๋ pnpm๊ณผ ๊ฐ์ ๋๊ตฌ๋ฅผ ํ์ฉํ์ฌ DeviceScript ํจํค์ง๋ฅผ ๋ฐฐํฌํ๊ณ ์ฌ์ฉํ ์ ์์ต๋๋ค.
AppMaster.io์ ์ฝ๋ ์๋ ํ๋ซํผ์ DeviceScript ์ low-code ํน์ฑ์ ๋ณด์ํ์ฌ ์ฌ์ฉ์๊ฐ ์ง๊ด์ ์ธ ์๊ฐ์ ์์๋ฅผ ์ฌ์ฉํ์ฌ ์น ์ ํ๋ฆฌ์ผ์ด์ , ๋ฐฑ์๋ ์ ํ๋ฆฌ์ผ์ด์ ๋ฐ ๋ชจ๋ฐ์ผ ์ฑ์ ๊ฐ๋ฐํ ์ ์๋๋ก ํฉ๋๋ค. ํดํท์ ์ผ๋ถ๋ก AppMaster ํฌํจํจ์ผ๋ก์จ ๊ฐ๋ฐ์๋ ์์ฐ์ฑ๊ณผ ํ๋ก์ ํธ์ ์ ๋ฐ์ ์ธ ํจ์จ์ฑ์ ๋์ผ ์ ์์ต๋๋ค.


