Gjuha e programimit TypeScript 7.0 është në dispozicion me një kompilator të ri të shkruar në Go

Kompania Microsoft publikoi versionin TypeScript 7.0, një gjuhë për zhvillimin e aplikacioneve web, e cila zgjeron kapacitetet e JavaScript dhe mjetet e lidhura me të. Publikimi është i rëndësishëm për dorëzimin e një kompajleri të ri typescript-go (tsgo), i cili përkthe kodin TypeScript në formatin JavaScript, i cili është rishkruar në gjuhën Go dhe tani është i njohur si gati për ndërtimin e projekteve të punës. Mjeti shpërndahet nën licencën Apache 2.0, zhvillimi bëhet në një depo publike përmes shërbimit GitHub. Specifikimet e gjuhës janë të hapura dhe të publikuara në kuadër të Marrëveshjes së Specifikimeve të Open Web Foundation.

Kompajleri i vjetër TypeScript ishte shkruar në gjuhën TypeScript, çka krijonte probleme me shkallëzimin në projekte shumë të mëdha. Kur ngarkohej dhe kontrollohej kodi i këtyre projekteve në mjediset e integruara të zhvillimit, shfaqeshin vonesa të mëdha, duke detyruar zhvilluesit të komprometojnë lehtësinë e zhvillimit për të shkurtuar vonesat dhe të çaktivizojnë funksionalitetet për kontrollin e kodit në redaktues. Në ekosistem gjithashtu kishte një nevojë të domosdoshme për mjete komandosh.

Në kompilatorin e ri, është rritur ndjeshëm shpejtësia e ndërtimit, është reduktuar konsumi i memories dhe është realizuar një arkitekturë e re që lejon paralelizimin e ekzekutimit të shumë operacioneve, përfshirë analizën, verifikimin e tipeve dhe gjenerimin e kodit. Analiza dhe gjenerimi i kodit tani kryhen pavarësisht për dokumente të ndryshme. Për më tepër, ofrohet një mjet i kompakt linje komande tsc që lejon ndërtimin e shpejtë të kodit për të verifikuar funksionalitetin e tij.

Në funksionalitet, gjuha TypeScript 7 është e ngjashme me TypeScript 6 dhe degët e të dyjave janë të ndërrueshme, ndërsa kompilatorët mund të ekzistojnë së bashku në një sistem. Të gjitha cilësimet e nevojshme për degën TypeScript 7 janë më parë ndryshuar në versionin TypeScript 6, ku janë klasifikuar si të vjetra mundësitë e gjuhës që nuk janë në përputhje me TypeScript 7. Teorikisht, çdo kod TypeScript, i kompiliuar në TypeScript 6.0, duhet të kompilohet gjithashtu në TypeScript 7.0 nëse aktivizoni modalitetin stableTypeOrdering dhe pa përdorur flamujt ignoreDeprecations. Për një kohë, bazat e kodit TypeScript 6.x dhe TypeScript 7.x do të mbahen paralele dhe do të bashkëekzistojnë, derisa dega TypeScript 7 të arrijë një gjendje të pjekur, e gatshme për të zëvendësuar plotësisht mjetin e vjetër.

Sa i përket performancës së kompilatorit, krahasuar me degën e kaluar, shpejtësia e ndërtimit në TypeScript 7 është rritur gjatë ringjalljes së vscode me 11.9 herë, sentry me 8.9 herë, bluesky me 8.7 herë, playwright me 8.7 herë dhe tldraw me 7.7 herë. Në të njëjtën kohë, konsumi i memorie gjatë ndërtimit të vscode është zvogëluar me 18%, sentry me 6%, bluesky me 26%, playwright me 11% dhe tldraw me 15%. Aktivizimi në modalitetin e verifikimit të tipeve në TypeScript 7 është deri në 10.6-16.7 herë më i shpejtë se në TypeScript 6.

Gjuha Go u zgjodh për të shkruar kompilerin e ri për shkak të afërsisë së saj me TypeScript në semantikë dhe strukturë kodi, e cila mundësoi ruajtjen e modeleve ekzistuese gjatë portimit dhe e thjeshtoi kalimin e ndryshimeve midis bazave të kodit. Gjithashtu, gjuha Go siguron performancë të lartë, zhvillohet me vëmendje ndaj programimit shumëprocesor, tregon efikasitet në sistemet me shumë bërthamë dhe ka mjete të integruara për mbrojtjen nga problemet me menaxhimin e memories.

Gjuha TypeScript zgjeron mundësitë e JavaScript, duke mbetur plotësisht e përputhshme me versionet e mëparshme, çka e bën të lehtë migrimin e aplikacioneve ekzistuese në TypeScript. Aplikacioni përfundimtar në TypeScript kompilohet në JavaScript të zakonshëm, i cili mund të ekzekutohet në çdo shfletues modern ose të përdoret me platforma si Node.js, Bun dhe Deno. Në programet TypeScript mund të përdoren biblioteka ekzistuese JavaScript. Ndryshe nga JavaScript, gjuha TypeScript ofron mjete për përcaktimin e qartë të tipeve, si dhe mbështetje për përdorimin e klasave të plota. Tipizimi statik ndihmon në shmangien e shumë gabimeve gjatë zhvillimit, mundëson përdorimin e teknikave të tjera optimizuese, lehtëson procesin e debug-imit, bën kodin më të lexueshëm dhe më të lehtë për përmirësim dhe mbështetje.

Burimi: opennet.ru

Bleni hostim tĂ« besueshĂ«m pĂ«r faqe me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Bleni hostim tĂ« besueshĂ«m pĂ«r faqe me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster