TypeScript 7 આ અઠવાડિયે લોન્ચ થયું છે, જે Go માં સંપૂર્ણ રીતે ફરીથી લખવામાં આવ્યું છે, જેનાથી VS Code માટે કમ્પાઈલેશન સમય 17.5 સેકન્ડથી ઘટીને 1.3 સેકન્ડથી પણ ઓછો થઈ ગયો છે અને મોટા પ્રોજેક્ટ્સમાં મેમરીનો વપરાશ 26% સુધી ઘટી ગયો છે. આ સ્પીડ વધારાથી રોજિંદા કોડિંગમાં તાત્કાલિક પ્રતિસાદ મળે છે, અને આ બચતથી સમગ્ર સ્ટેકમાં ડેવલપરના કલાકોના સમયની બચત થાય છે.

Go માં રીરાઈટ (rewrite) કેમ મહત્વનું છે

Microsoft એ લાંબા સમયથી ચાલી આવતી JavaScript/Node અમલીકરણને બદલીને કમ્પાઈલરને Go માં ફરીથી બનાવ્યું છે. જેમ જેમ પ્રોજેક્ટ્સ વધતા ગયા તેમ મૂળ કોડબેઝ મર્યાદાઓનો સામનો કરવા લાગ્યું—parsing અને type-checking ને કારણે મર્યાદિત CPU અને RAM ધરાવતા CI runners ધીમા પડી જતા હતા. બિલ્ટ-ઇન concurrency ધરાવતી compiled language પર સ્વિચ કરીને, નવું એન્જિન parsing અને type-checking ને સમાંતર (parallel) ચલાવે છે, જેનાથી પ્રથમ એરર માટેનો સમય ઘટી જાય છે.

વાસ્તવિક દુનિયામાં પરફોર્મન્સના ફાયદા

કેટલાક મુખ્ય કોડબેઝના પ્રારંભિક benchmarks આ પ્રભાવ દર્શાવે છે:

  • VS Code: 11.9 × ઝડપી કમ્પાઈલેશન, 18 % ઓછો મેમરી વપરાશ.
  • Sentry, Bluesky, Playwright, Tldraw: 7.7 × થી 8.9 × સુધીની સ્પીડ વધારો.
  • Bluesky માં મેમરી વપરાશમાં પણ 26 % નો ઘટાડો જોવા મળ્યો છે.

જે ડેવલપર્સ દિવસમાં ડઝનબંધ વખત “run” અથવા “watch” પર ક્લિક કરે છે, તેઓ વધુ સરળ એડિટિંગ અને હળવા CI લોડનો અનુભવ કરે છે.

નવા flags તમને નિયંત્રણ આપે છે

આ રીરાઈટ સાથે કમાન્ડ-લાઇન વિકલ્પો આવે છે જે ટીમોને સ્પીડ અને મેમરી વચ્ચે સંતુલન જાળવવામાં મદદ કરે છે:

  • --checkers અને --builders મલ્ટિકૉર CPUs નો ઉપયોગ કરીને parsing અને type-checking workers ને સાથે સાથે શરૂ કરે છે.
  • --singleThreaded તમામ કામ એક જ થ્રેડ પર કરવા માટે મજબૂર કરે છે, જે race condition દેખાય ત્યારે debugging ને ફરીથી કરી શકાય તેવું (reproducible) બનાવે છે.
  • type-checking workers અને builder workers નું અલગ-અલગ સ્કેલિંગ CI pipelines ને દરેક તબક્કા માટે પૂરતા પ્રમાણમાં સંસાધનો ફાળવવાની મંજૂરી આપે છે.
  • નવું --watch મોડ Parcel નું Go-આધારિત પોર્ટ વાપરે છે, જે વિશાળ node_modules ટ્રીઝના ખર્ચાળ polling ને દૂર કરે છે અને ફાઇલ-ચેન્જ ડિટેક્શનને હળવું રાખે છે.

કોને ફાયદો થશે, અને કોણ અચકાઈ શકે છે

TypeScript પર વધુ આધાર રાખતા Front-end frameworks—જેમ કે Next.js અને Nuxt—તેમને ઝડપી rebuilds અને વધુ સચોટ feedback loops નો લાભ મળશે. VS Code અને Cursor જેવા IDEs વધુ પ્રતિભાવશીલ (responsive) લાગે છે, જે ડેવલપર્સને ટર્મિનલ બિલ્ડ્સ પર સ્વિચ કરવાને બદલે એડિટરમાં વધુ સમય વિતાવવા પ્રોત્સાહિત કરે છે.

આગળ શું જોવું

  • મોટા open-source પ્રોજેક્ટ્સ અને એન્ટરપ્રાઇઝ monorepos માં અપનાવવાનો દર.
  • સ્ટેબિલિટી અને કોઈપણ છુપાયેલા પરફોર્મન્સ ક્લિફ્સ (performance cliffs) પર કોમ્યુનિટી ફીડબેક.
  • Microsoft ના અપડેટ્સ જે કમ્પાઈલ સમય વધુ ઘટાડવા અથવા એરર ડાયગ્નોસ્ટિક્સ સુધારવા માટે કમ્પાઈલર ફીચર્સ ઉમેરે છે.