TypeScript 7 இந்த வாரம் Go மொழியில் முழுமையாக மாற்றியமைக்கப்பட்டு அறிமுகப்படுத்தப்பட்டுள்ளது. இது VS Code-க்கான தொகுப்பு நேரத்தை (compilation time) 17.5 வினாடிகளிலிருந்து 1.3 வினாடிகளுக்கும் குறைவாகக் குறைத்துள்ளதுடன், பெரிய திட்டங்களில் நினைவகப் பயன்பாட்டையும் (memory use) 26% வரை குறைத்துள்ளது. இந்த வேக அதிகரிப்பு அன்றாட கோடிங் அனுபவத்தை உடனடித் தன்மையுடன் உணரச் செய்கிறது, மேலும் இது டெவலப்பர்களின் நேரத்தை பல மணிநேரங்கள் மிச்சப்படுத்துகிறது.

ஏன் Go மொழியில் மாற்றியமைப்பது முக்கியம்

Microsoft நீண்டகாலமாகப் பயன்படுத்தப்பட்டு வந்த JavaScript/Node செயலாக்கத்திற்குப் பதிலாக, கம்பைலரை (compiler) Go மொழியில் மீண்டும் உருவாக்கியுள்ளது. திட்டங்களின் அளவு அதிகரிக்கும் போது, பழைய குறியீட்டுத் தொகுப்பு (codebase) ஒரு தடையை எதிர்கொண்டது—parsing மற்றும் type-checking செயல்பாடுகள், குறைந்த CPU மற்றும் RAM கொண்ட CI runners-களை மெதுவாக்கின. உள்ளமைக்கப்பட்ட இணை செயலாக்கத் திறன் (built-in concurrency) கொண்ட ஒரு compiled மொழியில் மாறுவதன் மூலம், புதிய என்ஜின் parsing மற்றும் type-checking ஆகியவற்றை இணையாக (parallel) இயக்குகிறது, இதனால் முதல் பிழையைக் கண்டறியும் காத்திருப்பு நேரம் பெருமளவு குறைகிறது.

நிஜ உலக செயல்திறன் முன்னேற்றங்கள்

சில முக்கிய குறியீட்டுத் தொகுப்புகளிலிருந்து (codebases) பெறப்பட்ட ஆரம்பகால அளவீடுகள் (benchmarks) இதன் தாக்கத்தை விளக்குகின்றன:

  • VS Code: 11.9 மடங்கு வேகமான தொகுப்பு (compilation), 18% குறைவான நினைவகப் பயன்பாடு (memory footprint).
  • Sentry, Bluesky, Playwright, Tldraw: 7.7 முதல் 8.9 மடங்கு வரை வேக அதிகரிப்பு.
  • Bluesky-யிலும் நினைவகப் பயன்பாடு 26% குறைந்துள்ளது.

ஒரு நாளைக்கு டஜன் கணக்கான முறை “run” அல்லது “watch” பொத்தான்களை அழுத்தும் டெவலப்பர்கள், மென்மையான எடிட்டிங் மற்றும் குறைவான CI சுமைகளை உணர முடியும்.

புதிய ஃபிளாக்குகள் (flags) உங்களுக்குக் கட்டுப்பாட்டை வழங்குகின்றன

இந்த மாற்றியமைக்கப்பட்ட பதிப்பு, வேகம் மற்றும் நினைவகத்திற்கு இடையே சமநிலையைப் பேண உதவும் command-line விருப்பங்களுடன் (options) வருகிறது:

  • --checkers மற்றும் --builders ஆகியவை multicore CPUs-களைப் பயன்படுத்தி, parsing மற்றும் type-checking வேலைகளை (workers) அருகருகே (side-by-side) தொடங்குகின்றன.
  • --singleThreaded அனைத்து வேலைகளையும் ஒரே திரெட்டில் (thread) செய்யத் தூண்டுகிறது, இது race condition ஏற்படும் போது பிழைத்திருத்தத்தை (debugging) மீண்டும் செய்யக்கூடியதாக (reproducible) மாற்றுகிறது.
  • type-checking workers மற்றும் builder workers ஆகியவற்றைத் தனித்தனியாக அளவிட முடிவதால், CI pipelines ஒவ்வொரு கட்டத்திற்கும் தேவையான வளங்களை (resources) மட்டும் ஒதுக்கீடு செய்ய முடிகிறது.
  • புதுப்பிக்கப்பட்ட --watch பயன்முறை, Parcel-ன் Go அடிப்படையிலான பதிப்பைப் பயன்படுத்துகிறது; இது மிகப்பெரிய node_modules மரங்களை (trees) அடிக்கடி சரிபார்க்கும் (polling) செலவு மிகுந்த முறையைக் குறைத்து, கோப்பு மாற்றங்களைக் கண்டறிதலை (file-change detection) இலகுவாக வைக்கிறது.

யார் பயனடைவார்கள், யார் தயங்கலாம்

TypeScript-ஐ அதிகம் சார்ந்திருக்கும் Next.js மற்றும் Nuxt போன்ற Front-end frameworks, வேகமான மறுசீரமைப்பு (rebuilds) மற்றும் துல்லியமான பின்னூட்டச் சுழற்சிகளைப் (feedback loops) பெற முடியும். VS Code மற்றும் Cursor போன்ற IDE-கள் அதிக துரிதத் தன்மையுடன் (responsive) செயல்படுவதால், டெவலப்பர்கள் டெர்மினல் பில்டுகளுக்கு (terminal builds) மாறுவதற்குப் பதிலாக, எடிட்டரிலேயே அதிக நேரம் செலவிட ஊக்குவிக்கப்படுகிறார்கள்.

அடுத்து கவனிக்க வேண்டியவை

  • பெரிய திறந்த மூலத் திட்டங்கள் (open-source projects) மற்றும் நிறுவனங்களின் monorepos ஆகியவற்றில் இதன் பயன்பாட்டு விகிதம்.
  • நிலைத்தன்மை (stability) மற்றும் மறைந்திருக்கும் செயல்திறன் குறைபாடுகள் (performance cliffs) குறித்த சமூகத்தின் கருத்துக்கள்.
  • தொகுப்பு நேரத்தைக் குறைக்க அல்லது பிழை கண்டறிதலை (error diagnostics) மேம்படுத்த கம்பைலர் அம்சங்களைச் சேர்க்கும் Microsoft-ன் புதுப்பிப்புகள்.