JavaScripti platvormi Node.js koodibaasi on võetud muudatus, mis lisab võimaluse käivitada TypeScripti programmeerimiskeeles kirjutatud faile. TypeScripti keele tugi aktiveeritakse valiku «—experimental-strip-types» kaudu ja see seisneb keelele iseloomulike tüübinimede eemaldamises, st lähtekoodi konverteerimises JavaScriptiks enne täitmistähtaega. TypeScripti funktsioonid, mis ei ole seotud tüüpide kirjeldamisega, nagu nimede ruumid, dekoratsioonid, parameetrite omadused ja enum-tüübid, ei ole veel toetatud. Uut funktsionaalsust saab testida, kasutades tänaseid Node.js 23 öiseid kogusid.
Tõlkimiseks on kasutusel SWC (Speedy Web Compiler) kompilaator, mis on kirjutatud Rust keeles. Lisade vältimiseks Node.js-ile kasutatakse kompilaatori swc/wasm-typescript esitamist, mis on pakkuda WebAssembly vahefailina ja mida on juba rakendatud samadel eesmärkidel Deno platvormil. Muudatus tehti vastuseks paljudele kasutajate soovidele võimaldada TypeScripti koodi käivitamist ilma väliste laadijate ja lisade installimiseta. Konkurentplatvormidel Deno ja Bun on TypeScripti tugi rakendatud algselt.
TypeScripti ja JavaScripti peamine erinevus on tüüpide selge määratlemine. Staatiline tüpiseerimine aitab vältida arenduse ajal paljusid vigu, võimaldab kasutada täiendavaid optimeerimistehnikaid, lihtsustab tõrkeotsingut ning teeb koodi loetavamaks ja lihtsamaks muudatuste tegemiseks ja kolmandate osapoolte arendajate jaoks hooldamiseks. Node.js-i rakenduses kaovad need TypeScripti võimalused, kuna lähtekoodide tõlkimisel JavaScriptiks tüüpide kontrollimist ei tehta.
Allikas: opennet.ru
