TypeScript

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

ما هي TypeScript؟

‏TypeScript لغة برمجة طوّرتها Microsoft وأطلقتها مفتوحة المصدر عام 2012، وكبير مهندسيها Anders Hejlsberg. وهي مجموعة شاملة (superset) لـ JavaScript، أي أنها تحتفظ باللغة كلها وتضيف إليها تعريفات أنواع اختيارية. والنوع يحدد ما ينبغي أن تكون عليه القيمة: رقمًا أو نصًا أو كائنًا بحقول معينة، فتُكتشف مبكرًا هفوة مثل تمرير نص في مكان ينتظر رقمًا.

لا تشغّل المتصفحات TypeScript مباشرة. فالمترجم (compiler) يفحص الأنواع أولًا، ثم يُنتج JavaScript عادية بعد حذف تعريفات الأنواع، فتعمل النتيجة في أي متصفح أو على Node.js. وأثناء كتابة الشيفرة تغذّي الفحوص نفسها المحرر: فيقترح الحقول التي يملكها الكائن، وينبّه إلى الأخطاء لحظة كتابتها، ويتيح إعادة تسمية العناصر بأمان في المشروع كله.

‏TypeScript مجانية بترخيص Apache 2.0، وتعمل مع الأدوات التي نستخدمها، ومنها React وNext.js وVue.js وAstro وVite. وقد جاء الإصدار TypeScript 7 في يوليو 2026 بمترجم أصلي (native) جديد يفحص المشاريع الكبيرة أسرع من ذي قبل بعدة أضعاف. والأنواع كذلك توثيق حي: فمن يفتح الشيفرة لاحقًا يرى بنظرة واحدة ما يتوقعه كل جزء منها.

أين نستخدم TypeScript

نختار TypeScript عندما يحمل المشروع منطقًا كثيرًا أو يُتوقع أن ينمو. وهذا يعني عمليًا:

  • تطبيقات الويب ولوحات التحكم

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

  • بيانات API والنماذج

    نصف شكل البيانات التي يرسلها الخادم أو النموذج ونتحقق منها عند وصولها، فتظهر الحقول الناقصة أو الصيغ الخاطئة أثناء التطوير، لا أمام عملائك.

  • شيفرة مشتركة بين الواجهة والخادم

    عندما تعمل الواجهة الخلفية على Node.js، يتشارك المتصفح والخادم تعريفات الأنواع نفسها، فيتفق الطرفان دائمًا على شكل الطلب أو الحجز أو الرسالة.

  • مكوّنات بعقود واضحة

    في مكوّنات React وVue.js تحدد الأنواع الخيارات التي يقبلها كل مكوّن، فيبقى نظام التصميم متسقًا، وينبّهنا المحرر عندما يُستخدم مكوّن بطريقة خاطئة.

لماذا TypeScript؟

  • أخطاء أقل تصل إلى زوارك

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

  • تعديلات آمنة مع النمو

    حين نضيف ميزة أو نغيّر طريقة عمل شيء ما، تشير TypeScript إلى كل موضع في المشروع يحتاج إلى تحديث، فلا يعني النمو كسر ما يعمل بالفعل.

  • شيفرة واضحة لمن يأتي بعدنا

    تشرح الأنواع ما يتوقعه كل جزء من الشيفرة. وسواء تولى صيانة الموقع لاحقًا مطوروك أو فريق آخر أو نحن، فسيستوعب من يتولاها العمل أسرع وبمفاجآت أقل.

كيف نعمل على مشروعك

في بداية المشروع نرسم خريطة البيانات الرئيسية، مثل شكل المنتج أو الحجز أو المستخدم، ونكتبها على هيئة أنواع. ثم نبني الميزات فوقها مع تفعيل الفحص الصارم (strict)، ويراجع المترجم والمحرر كل خطوة ونحن نتقدم.

قبل التسليم يجب أن يُبنى المشروع دون خطأ أنواع واحد، وتعمل فحوص آلية مع كل تغيير. وتتسلّم الشيفرة المصدرية الكاملة بـ TypeScript مع JavaScript المترجمة، فتبقى الشيفرة ملكك وجاهزة للمطور التالي.

تصميم المواقع وتطويرها

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

مركز المساعدة
هل تجعل TypeScript موقعي أبطأ؟

لا. تُحذف الأنواع عند الترجمة، فيصل إلى المتصفح JavaScript عادية. فـ TypeScript تضيف فحوصًا أثناء التطوير فقط، ولا تضيف شيئًا إلى ما ينزّله زوارك.

هل تستحق TypeScript العناء في موقع صغير؟

ليس دائمًا. ففي موقع تعريفي بسيط قليل المنطق تكفي JavaScript العادية غالبًا. ونوصي بـ TypeScript حين يتضمن المشروع نماذج أو بيانات أو ميزات ستواصل النمو.

هل يستطيع مطور آخر العمل على الشيفرة لاحقًا؟

نعم. فـ TypeScript لغة معروفة على نطاق واسع، والأنواع تجعل الشيفرة أسهل فهمًا. والشيفرة المصدرية الكاملة التي نسلّمها ملكك، فأنت حر في اختيار من يتولى صيانتها.

هل لاستخدام TypeScript تكلفة؟

لا. فـ TypeScript مجانية ومفتوحة المصدر، دون رسوم ترخيص أو اشتراك. وتكلفة المشروع هي عمل التطوير، لا اللغة.

الأداة المناسبة مع الفريق المناسب

لنحدد معًا الأدوات التي تناسب عملك، ثم نعود إليك بخريطة طريق لمشروعك.