يأتي TypeScript 7.0 مزودًا بمترجم مدعوم بتقنية Go، مما يوفر زيادة في السرعة تصل إلى 12 ضعفًا

آخر تحديث: 08/02/2026
نبذة عن الكاتب: ج مصدر تريل
  • يقوم TypeScript 7.0 بإعادة كتابة المترجم بلغة Go، مما يحقق تحسينات في الأداء تتراوح بين 10 و12 ضعفًا مقارنة بالإصدار 6.
  • يفتقر الإصدار الجديد إلى واجهة برمجة تطبيقات عامة، مما يؤدي إلى تعطيل أدوات مثل Volar و ts-jest وأدوات فحص قوالب الإطار حتى وصول الإصدار 7.1.
  • ستفشل المشاريع التي تستخدم خيارات مهملة (ES5، AMD، دقة الوحدة النمطية الكلاسيكية)؛ يتوفر حل توافقي.
  • ينتقل دعم المحرر إلى بروتوكول خادم اللغة، مع وجود ملحق مخصص لـ VS Code متاح بالفعل.

TypeScript 7.0 تحديث

أصدرت مايكروسوفت أخيرًا TypeScript 7.0 ، وهو إصدارٌ هامٌ للغاية، ليس بسبب ميزات اللغة الجديدة فحسب، بل لأنّ المُصرّف بأكمله أُعيدت كتابته بلغة Go. والنتيجة؟ مُصرّفٌ أسرع بما يصل إلى 12 ضعفًا من سابقه. تُعالج هذه الخطوة مشكلةً مُزمنةً يُعاني منها المُطورون الذين يعملون على قواعد بيانات ضخمة: وهي انتظار التحقق من الأنواع والترجمة.

قرر الفريق نقل بيئة تشغيل المُصرّف بالكامل من جافا سكريبت إلى لغة جو بعد سنوات من المعاناة مع مشاكل الأداء والذاكرة. جافا سكريبت، المصممة أصلاً لواجهات المستخدم وتفاعلات المتصفح، لم تكن مُهيأة لأحمال العمل كثيفة الحساب مثل المُصرّف. بالانتقال إلى جو، أتاحت مايكروسوفت إمكانية التزامن في الذاكرة المشتركة، مما سمح للمُصرّف بتوزيع العمل على عدة أنوية معالجة مركزية - وهو أمر لم يكن بإمكان مُحرك جافا سكريبت أحادي الخيوط القيام به.

TypeScript 6.0 يعتمد على المستقبل
مقالة ذات صلة:
TypeScript 6.0 ومستقبله القائم على لغة Go

أرقام الأداء التي تتحدث عن نفسها

تُعدّ نتائج الاختبارات المعيارية مذهلة. انخفض وقت بناء Visual Studio Code من 125 ثانية إلى 10.6 ثانية فقط ، أي بتحسن قدره 11.9 ضعفًا. كما انخفض وقت التحقق من أنواع البيانات في Slack CI من 7.5 دقيقة إلى 1.25 دقيقة، وانخفض وقت بناء Bluesky من 24.3 ثانية إلى 2.8 ثانية. على جهاز ذي 16 نواة، يستخدم الإعداد الافتراضي أربعة مدققات أنواع متوازية، ولكن زيادة هذا العدد إلى 12 مدققًا يُحقق تسريعًا قدره 12 ضعفًا. تتناسب هذه المكاسب طرديًا مع حجم المشروع لأن عنق الزجاجة أصبح الآن في العتاد، وليس في بيئة التشغيل.

أوضح أندرس هيلسبرغ، الزميل التقني في مايكروسوفت، الفرق عمليًا: استغرق فتح ملف به خطأ في المحرر 17.5 ثانية باستخدام TypeScript 6، بينما استغرق 1.3 ثانية فقط باستخدام TypeScript 7. أُعيدت كتابة خدمة اللغة نفسها لاستخدام بروتوكول خادم اللغة (LSP) ، مما يُسهّل التكامل مع المحررات الأخرى وأدوات الذكاء الاصطناعي. يحتوي VS Code بالفعل على إضافة مخصصة لـ TypeScript 7، ويجري حاليًا تحويل الدعم المدمج من تصميم TSServer القديم.

ما الذي يتعطل وما الذي لا يتعطل

على الرغم من التحسينات في الأداء، يأتي TypeScript 7.0 بدون واجهة برمجة تطبيقات عامة . هذا يعني أن جميع أدوات فحص أنواع القوالب في أطر عمل الويب الرئيسية - مثل Volar الخاص بـ Vue، وخدمة اللغة الخاصة بـ Svelte، وأداة فحص القوالب الخاصة بـ Angular، وMDX - غير متوافقة. كما أن أدوات مثل ts-morph وts-jest، التي تعتمد على تفاصيل المُصرّف الداخلية، لا تعمل أيضًا. وقد أكدت مايكروسوفت أن واجهة برمجة تطبيقات بديلة ستتوفر في TypeScript 7.1، والمتوقع إصدارها في أكتوبر 2026. وحتى ذلك الحين، يُنصح المشاريع التي تستخدم هذه الأطر بالاستمرار في استخدام TypeScript 6.0.x.

تواجه إعدادات المشاريع القديمة توقفًا تامًا. فالخيارات التي تم إهمالها في الإصدار 6 تتسبب الآن في فشل عملية البناء : أهداف تجميع ES5، وتنسيقات وحدات AMD وSystemJS، وحل الوحدات النمطية التقليدي، وكلمة assert في عمليات الاستيراد، كلها تفشل بشكل مباشر. لم يعد ملف tsconfig.json الافتراضي الجديد يقوم بتحميل حزم @types تلقائيًا، لذا ستفشل المشاريع التي تعتمد على اكتشاف الأنواع المحيطية دون وجود تبعيات صريحة للأنواع دون أي تنبيه. توفر مايكروسوفت طبقة توافق (typescript@npm:@typescript/typescript6) للمشاريع التي تحتاج إلى تشغيل أدوات TS6 جنبًا إلى جنب مع المُجمِّع الجديد.

المشاريع التي تتجاوز هذه العقبات - تطبيقات Node.js أو Deno البسيطة، وتطبيقات المتصفح غير المبنية على نظام قوالب إطار العمل، والمكتبات التي لا تعتمد على واجهات برمجة التطبيقات (API) - يمكن ترقيتها بتغيير واحد في ملف package.json. والنتيجة ملموسة: فقد أفاد Slack بانخفاض وقت انتظار الدمج بنسبة 40%، وتشير تقديرات Microsoft News Services إلى توفير 400 ساعة شهريًا في انتظار عمليات الدمج.

سيصدر TypeScript 7.1، المقرر إطلاقه في أكتوبر 2026، والذي سيتضمن واجهة برمجة التطبيقات (API) الجديدة للمترجم، والتي تحتاجها أدوات Vue وSvelte وAngular وMDX قبل الترقية. عند صدوره، ستصل تحسينات الأداء الناتجة عن نقل Go الذي استغرق 15 شهرًا إلى جميع مكونات النظام البيئي. وحتى ذلك الحين، توصي صفحات مشاريع Volar وSvelteKit وAngular بالبقاء على TypeScript 6.0.x. أما بالنسبة لبقية المستخدمين، فالترقية سهلة ومباشرة، والوقت الذي سيتم توفيره كبير جدًا.

الوظائف ذات الصلة: