0Pricing
TypeScript Academy · درس

‏TypeScript 5.5+: التصريحات المعزولة وما بعدها

افهموا isolatedDeclarations وتحسينات الأداء الحديثة

‏TypeScript 5.5+: التصريحات المعزولة وما بعدها درس مجاني في TypeScript Academy على CoddyKit. هذا هو الدرس 4 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في TypeScript Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة TypeScript Academy 4 دروس في المجموع.

نظرة عامة على TypeScript 5.5

قدّم TypeScript 5.5 (في يونيو 2024) استنتاج مسندات النوع، ودعم التصريحات المعزولة، والتحقق من صياغة التعبيرات النمطية، وتحسينات كبيرة في أداء المحرر.

// npm install typescript@5.5

مسندات النوع المستنتجة

يمكن لـ TS 5.5 الآن استنتاج مسندات النوع is تلقائيًا من أجسام الدوال التي تضيق نوع وسيط، من دون الحاجة إلى تعليق توضيحي صريح.

// Before 5.5: had to annotate manually
function isString(val: unknown): val is string {
  return typeof val === "string";
}

// After 5.5: TypeScript infers the predicate automatically
function isString(val: unknown) {
  return typeof val === "string";
}
// Inferred: (val: unknown) => val is string

‏isolatedDeclarations: true

أضاف TS 5.5 دعمًا رسميًا لـ isolatedDeclarations، الذي يتطلب أنواع إرجاع صريحة للصادرات لتمكين إنشاء التصريحات بالتوازي لكل ملف.

{
  "compilerOptions": {
    "isolatedDeclarations": true
  }
}
// Exported functions without return types now cause an error

التحقق من صياغة التعبيرات النمطية

يُبلغ TS 5.5 عن أخطاء الصياغة في القيم الحرفية للتعبيرات النمطية، مما يكشف أخطاء التعبيرات النمطية الشائعة أثناء الترجمة.

const re = /(?<name>\w+)/; // OK — named capture group
const bad = /[z-a]/;        // Error: invalid character class range

تضييق تدفق التحكم للفَهارس الثابتة

حسّن TS 5.5 تضييق النوع للوصول إلى خصائص الكائنات وفهارس المصفوفات الثابتة.

const obj = { x: Math.random() > 0.5 ? "a" : "b" };
if (obj.x === "a") {
  // TS 5.5: obj.x is narrowed to "a" here
  console.log(obj.x.toUpperCase());
}

TypeScript 5.6 وما بعده

يواصل TypeScript إصدار نسخ جديدة كل ثلاثة أشهر، مع تحسينات تدريجية في الاستنتاج والأداء وميزات اللغة المتوافقة مع مقترحات ECMAScript.

# Quarterly release cadence:
# 5.5: June 2024
# 5.6: September 2024
# 5.7: December 2024
# 5.8: March 2025

متابعة خارطة طريق TypeScript

ينشر فريق TypeScript خطة تنفيذ لكل إصدار على GitHub. وتساعدك متابعتها على توقّع الميزات القادمة.

# TypeScript iteration plans:
# github.com/microsoft/TypeScript/issues?q=Iteration+Plan

التوافق مع ECMAScript

يتابع TypeScript مقترحات ECMAScript. وعادةً ما تصل مقترحات المرحلة 3 (مثل المزيّنات وusing وObject.groupBy) إلى TypeScript بعد وقت قصير من بلوغها المرحلة 3.

# TC39 proposals: https://tc39.es/proposals/
# Stage 3 = TypeScript eligible for inclusion

ترقية TypeScript بأمان

عند ترقية إصدارات TypeScript، شغّل tsc --noEmit وتحقق من سجل تغييرات TypeScript بحثًا عن التغييرات التي قد تكسر التوافق قبل تثبيت زيادة الإصدار.

npm install typescript@latest
npx tsc --noEmit
# Review: https://www.typescriptlang.org/docs/handbook/release-notes/overview.html

مواكبة أحدث إصدارات @typescript/nightly

استخدم الإصدار الليلي من TypeScript لاختبار الميزات القادمة أو الإبلاغ عن الأخطاء قبل الإصدارات الرسمية.

npm install typescript@next
# Use nightly in a separate branch or experimental project

موارد المجتمع

واكب مستجدات TypeScript من خلال الإصدارات الرسمية، ومدونة TypeScript، وTotal TypeScript الخاصة بـ Matt Pocock، ومجتمع TypeScript على Discord.

# Resources:
# typescriptlang.org/docs
# devblogs.microsoft.com/typescript
# totaltypescript.com
# discord.gg/typescript

مراجعة: TypeScript 5.5 وما بعده

قدّم TS 5.5 مسندات النوع المستنتجة، وisolatedDeclarations الرسمي، والتحقق من صياغة التعبيرات النمطية، وتحسين تضييق النوع. يصدر TypeScript كل ثلاثة أشهر؛ لذا تابع خارطة الطريق وأجرِ الترقية بأمان باستخدام عمليات التحقق عبر --noEmit.

تحقق سريع

ماذا يفعل TypeScript 5.5 مع دوال مسندات النوع؟

ما الذي تعلمته

يقدّم TypeScript 5.5 وما بعده مسندات النوع المستنتجة، وisolatedDeclarations لأدوات العمل المتوازية، والتحقق من صياغة التعبيرات النمطية، وتحسين تضييق تدفق التحكم. تابع خارطة الطريق الفصلية، وأجرِ الترقية مع التحقق باستخدام --noEmit، وتفاعل مع مجتمع TypeScript لمواكبة المستجدات.

الأسئلة الشائعة

هل درس «‏TypeScript 5.5+: التصريحات المعزولة وما بعدها» مجاني؟

نعم — نص درس «‏TypeScript 5.5+: التصريحات المعزولة وما بعدها» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة TypeScript Academy، انتقل إلى CoddyKit PRO. تتضمن دورة TypeScript Academy 4 دروس في المجموع.

ماذا ستتعلم في «‏TypeScript 5.5+: التصريحات المعزولة وما بعدها»؟

افهموا isolatedDeclarations وتحسينات الأداء الحديثة تتمرن على TypeScript Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ TypeScript Academy؟

لا تُشترط خبرة سابقة. TypeScript Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 4 من أصل 4.

كم من الوقت يستغرق درس «‏TypeScript 5.5+: التصريحات المعزولة وما بعدها»؟

معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.

هل يمكنني كتابة وتشغيل أكواد في درس TypeScript Academy هذا؟

نعم. كل درس في TypeScript Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.

جميع الدروس في هذه الدورة

  1. ‏TypeScript 5.0: المزيّنات القياسية ومعاملات الأنواع const
  2. ‏TypeScript 5.1-5.2: تحسينات الاستدلال
  3. ‏TypeScript 5.3-5.4: تضييق جديد وNoInfer
  4. ‏TypeScript 5.5+: التصريحات المعزولة وما بعدها
← العودة إلى TypeScript Academy