كيفية تحويل مشروع JavaScript إلى TypeScript

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

الخطوة 1: تثبيت TypeScript

ابدأ بإضافة TypeScript إلى المشروع. يتم ذلك باستخدام npm أو yarn.

npm install typescript --save-dev

الخطوة 2: إنشاء ملف تكوين TypeScript

قم بإنشاء ملف tsconfig.json لتكوين TypeScript. يحدد هذا الملف خيارات المترجم والملفات التي سيتم تضمينها في التجميع.

{
  "compilerOptions": {
    "target": "es6",
    "module": "commonjs",
    "strict": true,
    "esModuleInterop": true,
    "skipLibCheck": true,
    "forceConsistentCasingInFileNames": true
  },
  "include": ["src/**/*"],
  "exclude": ["node_modules"]
}

الخطوة 3: إعادة تسمية ملفات JavaScript إلى TypeScript

قم بإعادة تسمية ملفات JavaScript من .js إلى .ts (أو .jsx إلى .tsx إذا كنت تستخدم React). يتيح هذا لـ TypeScript معالجة هذه الملفات.

  • بالنسبة للملفات التي تحتوي على JSX، قم بإعادة تسميتها إلى .tsx.
  • بالنسبة للملفات التي تحتوي فقط على كود TypeScript، قم بإعادة تسميتها إلى .ts.

الخطوة 4: إضافة تعريفات النوع

أضف تعريفات النوع للمكتبات الخارجية المستخدمة في المشروع. تتوفر هذه التعريفات كحزم @types على npm.

npm install @types/node @types/express --save-dev

الخطوة 5: إصلاح أخطاء TypeScript

قم بتجميع المشروع باستخدام TypeScript وعالج أي أخطاء أو مشكلات في النوع. سيقدم TypeScript ملاحظات حول عدم تطابق النوع والمشكلات الأخرى.

npx tsc

الخطوة 6: تحديث نصوص البناء

قم بتحديث نصوص البناء في package.json لاستخدام TypeScript. قم بتعديل النصوص لتشمل تجميع TypeScript.

"scripts": {
  "build": "tsc",
  "start": "node dist/index.js"
}

الخطوة 7: اختبار التطبيق

قم بإجراء الاختبارات للتأكد من أن كود TypeScript المحول يعمل كما هو متوقع. تأكد من أن التطبيق يتصرف بشكل صحيح بعد التحويل.

خاتمة

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