مترجم TypeScript
برنامج التحويل البرمجي TypeScript هو برنامج JavaScript يحول كود TypeScript إلى كود JavaScript عادي. تمت كتابته بلغة TypeScript ويمكن تشغيله على أي منصة تدعم JavaScript. مترجم TypeScript مفتوح المصدر ومتوفر على GitHub. تم تطوير المحول البرمجي وصيانته بواسطة Microsoft ويمكن استخدامه من سطر الأوامر ، أو يمكن استخدامه كمكون إضافي لـ IDEs الشائعة مثل Visual Studio و WebStorm.
يمكن لمجمّع TypeScript إصدار تعليمات JavaScript البرمجية المتوافقة مع أوقات تشغيل JavaScript المختلفة ، مثل Node.js و Internet Explorer و Chrome. يمكنه أيضًا إنشاء خرائط مصدر ، والتي تعيد تعيين رمز JavaScript الذي تم إنشاؤه إلى رمز TypeScript. يسمح هذا بتصحيح أكواد TypeScript البرمجية في المستعرض.
يمكن تكوين المترجم للتحقق من وجود أخطاء في النوع ، وسوف يقوم بالإبلاغ عن الأخطاء إن وجدت. يمكن تعطيل فحص النوع إذا رغبت في ذلك. مترجم TypeScript متاح بموجب ترخيص Apache 2.0 مفتوح المصدر.
ليست لغة مكتوبة بقوة
لا تعد لغة التنصيب لغة مكتوبة بشدة لأنها لا تتطلب الإعلان عن المتغيرات بنوع معين. هذا يعني أنه يمكن الإعلان عن متغير كنوع واحد ثم إعادة تعيينه إلى قيمة من نوع آخر. يمكن أن يؤدي هذا إلى حدوث أخطاء إذا تم استخدام المتغير بطريقة غير متوافقة مع النوع الذي تم التصريح عنه به.
يمكن عرض مثال أساسي لتوضيح هذه الخاصية بالنوع "أي".
// We initialze the variable as a string.
const something: any = "Tom";
// Now it's a number. This is valid TypeScript code.
something = 42;
ترجمة TypeScript إلى JavaScript
يأخذ مترجم TypeScript كود TypeScript ويحوله إلى كود JavaScript عادي. تُعرف هذه العملية بالترشح. يوزع المحول البرمجي أولاً شفرة TypeScript ، والتي تتحقق من أخطاء بناء الجملة. إذا لم يتم العثور على أخطاء ، فسيقوم المترجم بالتحقق من أخطاء النوع. إذا تم العثور على أي نوع من الأخطاء ، فسيقوم المترجم بالإبلاغ عنها والخروج.
إذا لم يتم العثور على أخطاء في النوع ، فسيستمر المترجم ويصدر كود JavaScript. ستكون شفرة JavaScript المنبعثة متوافقة مع وقت تشغيل JavaScript المحدد.
يمكن لمترجم TypeScript أيضًا إنشاء خرائط مصدر ، والتي تعيد تعيين رمز JavaScript الذي تم إنشاؤه مرة أخرى إلى رمز TypeScript. يسمح هذا بتصحيح أكواد TypeScript البرمجية في المستعرض.
خادم لغة TypeScript
خادم لغة TypeScript هو خادم لغة يوفر ميزات مثل إكمال التعليمات البرمجية ، والانتقال إلى التعريف ، والتحقق من النوع لمشاريع TypeScript.
خادم اللغة مطلوب حتى يتمكن مترجم TypeScript من توفير هذه الميزات. بدون خادم اللغة ، لن يتمكن برنامج التحويل البرمجي TypeScript إلا من توفير الميزات الأساسية مثل تمييز بناء الجملة وتنسيق التعليمات البرمجية. خادم لغة TypeScript مفتوح المصدر ومتوفر على GitHub.
خطوات إنشاء مشروع TypeScript
قبل وصف الخطوات ، إليك أمر تهيئة مشروع TypeScript في جهازك الطرفي.
npx tsc --init
الوصف: قم بتثبيت برنامج التحويل البرمجي TypeScript. قم بإنشاء ملف tsconfig.json في جذر المشروع. يحتوي هذا الملف على خيارات المترجم لمترجم TypeScript. أضف دليل src إلى ملف tsconfig.json. هذا هو المكان الذي سيتم فيه وضع ملفات مصدر TypeScript.
أضف ملف main.ts في دليل src. هذه هي نقطة الدخول لبرنامج TypeScript. قم بترجمة كود TypeScript عن طريق تشغيل tsc من سطر الأوامر. سيؤدي هذا إلى إنشاء ملفات جافا سكريبت في دليل src. قم بتشغيل برنامج TypeScript عن طريق تشغيل node main.js من سطر الأوامر.
الاختلافات بين TypeScript و JavaScript
هناك بعض الاختلافات الرئيسية بين TypeScript واللغات الأخرى المكتوبة بشدة: TypeScript هو مجموعة شاملة من JavaScript ، مما يعني أن أي كود JavaScript صالح هو أيضًا رمز TypeScript صالح. هذا يجعل من السهل اعتماده لمشاريع JavaScript الحالية.
يستخدم TypeScript نظام كتابة اختياري ، مما يعني أنه يمكن تحديد الأنواع للمتغيرات ، ولكنها غير مطلوبة. تستخدم اللغات الأخرى المكتوبة بشدة ، مثل Swift و Kotlin ، نظام كتابة إلزامي ، والذي يتطلب الإعلان عن جميع المتغيرات بنوع معين.
يدعم TypeScript الأدوية الجنيسة ، والتي تسمح للمجموعات الآمنة من النوع وهياكل البيانات الأخرى. هذا غير متوفر في JavaScript.
متى يجب علي استخدام Javascript بدلاً من Typescript للترميز؟
لا توجد قاعدة صارمة لوقت استخدام JavaScript أو TypeScript. الأمر متروك للمطور لاختيار الأداة المناسبة للوظيفة. ومع ذلك ، هناك بعض الإرشادات العامة التي يمكن اتباعها.
إذا كان المشروع مكتوبًا بالفعل بلغة JavaScript ، فمن الأفضل عادةً الاستمرار في استخدام JavaScript. ليست هناك حاجة لتحويل التعليمات البرمجية إلى TypeScript فقط من أجل استخدام TypeScript. لكن ضع في اعتبارك أن الحفاظ على مشروع JavaScript يمكن أن يكون أكثر صعوبة بسبب عدم وجود نظام كتابة يؤدي إلى أخطاء خفية. لذلك من الأفضل التفكير في اعتماد TypeScript إذا كان المشروع سيتم صيانته (وتوسيعه) في المستقبل.
إذا كان المشروع يبدأ من الصفر ، فمن الأفضل عادةً استخدام TypeScript. سيسمح هذا بتنظيم أفضل للشفرات وصيانتها على المدى الطويل.
أمثلة بسيطة
// TypeScript.
class Person {
name: string;
age: number;
}
const person: Person = new Person();
const person.name = "Tom";
const person.age = 42;
// JavaScript.
var Person = function() {};
Person.prototype.name = "";
Person.prototype.age = 0;
// TypeScript.
// Here's we're also using the class, but this
// time conforming to an interface, something that
// doesn't exist in JavaScript.
interface IPerson {
name: string;
age: number;
}
class Person implements IPerson {
name: string;
age: number;
}
// JavaScript.
var IPerson = function() {};
IPerson.prototype.name = "";
IPerson.prototype.age = 0;
var Person = function() {};
Person.prototype = Object.create(IPerson);
كلمات ختامية
تعد TypeScript لغة قوية يمكن أن تساعد في تحسين جودة التعليمات البرمجية الخاصة بك. من السهل البدء به ، ويمكن استخدامه على أي نظام أساسي يدعم JavaScript. أعطت هذه المقالة مقدمة موجزة للغاية ، حيث توفر اللغة المزيد من الميزات والمفاهيم لتتعلمها الآن.
تحقق من الروابط الموجودة في الملحق في نهاية الصفحة للحصول على بعض المواد التعليمية المفيدة.