تثبيت JavaScript محليًا

تعلّم كيف تثبّت JavaScript محليًا لحل تمارين Exercism على جهازك


يعتمد هذا المسار في كل مكان على Node.js لتوفير بيئة تشغيل لـ JavaScript. وهذا يعني أننا نفترض أن كل تنفيذ لـ JavaScript على حاسبك سيتم باستخدام Node.js.

متطلبات المسار

تأتي كثير من الأجهزة وNode.js مثبّت عليها مسبقًا، أو ربما ثُبّت سابقًا، أو ثُبّت كاعتماد لأحد البرامج. لذا، قبل أن نفعل أي شيء، يجدر بنا أن نتحقق مما إذا كان مثبّتًا بالفعل:

  1. افتح طرفية (Terminal، cmd، Powershell، bash، ...)
  2. node -v

إذا كان Node.js مثبّتًا، فسيظهر إصدار ما. دوّن هذا الإصدار. وإذا لم يكن Node.js مثبّتًا، فستظهر رسالة خطأ. وعادةً ما يكون شيء من قبيل 'node' is not recognised.

Node.js

إذا كان Node.js مثبّتًا مسبقًا

انتقل إلى موقع Node.js. سيعرض إصدارين (إذا تعرّف على نظام تشغيلك. وإلا، فاختر نظام تشغيلك أولًا). إذا طابق إصدار node -v لديك أحد هذين الإصدارَين، فأنت جاهز. وإن لم يطابق، فنوصي باستخدام Node.js LTS. إذا كنت قلقًا من أن الترقية قد تُفسد شيئًا في نظامك، فيمكنك المتابعة كما لو أن كل شيء على ما يرام؛ لكن قد لا نتمكن من تقديم الدعم إذا حدث شيء غير متوقع.

إذا لم يكن Node.js مثبّتًا

هناك طريقتان لتثبيت Node.js:

كلا الخيارَين يدعم Windows وmacOS وLinux. إذا لم تكن تعرف ما الذي عليك فعله، فاستخدام المثبّت هو الأسهل.

  • نوصي باستخدام نسخة LTS. ويُشار إليها أيضًا بوصفها موصى بها على موقع Node.js "لمعظم المستخدمين".
  • اتبع التعليمات الموجودة على صفحة الويب و/أو أثناء التثبيت، وثبّت Node.js.

اختبار التثبيت

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

  1. افتح طرفية (Terminal، cmd، Powershell، bash، ...)
  2. node -v

ينبغي أن يطابق الإصدار ذلك المعروض على الموقع.

[!NOTE] من المهم أن تفتح نافذة طرفية جديدة. فقد لا تكون نوافذ الطرفية المفتوحة قد حُدّثت بعد اكتمال التثبيت. وهذا يعني أن الطرفيات المفتوحة لا تعرف أنه ثُبّت برنامج جديد.

[!IMPORTANT] > مساعدة: 'node' is not recognised

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

على macOS وLinux يمكنك فعل ذلك بإضافة ما يلي إلى ~/.bash_profile أو ~/.zshrc:

export PATH=/usr/local/share/npm/bin:$PATH

وعلى Windows، افتح قائمة ابدأ وابحث عن "environment variables". ستحتاج إلى تعديل مدخل PATH و_إضافة_ مسار ملفات npm الثنائية هنا. وعادةً ما توجد هذه في C:\Program Files\nodejs. إذا تصفّحت هذا المسار باستخدام File Explorer، فينبغي أن تجد node.exe وnpm.bat وnpx.bat.

أغلق أي طرفيات مفتوحة وافتح طرفية جديدة.

تفعيل corepack

لكي تستخدم مدير حزم بإصدار محدد ومتوافقًا مع هذا المسار، يجب تفعيل corepack مرة واحدة:

corepack enable pnpm

متطلبات التمرين

يرجى اتباع هذه التعليمات لتنزيل واجهة سطر الأوامر الخاصة بـ Exercism لنظام التشغيل لديك.

بعد إعداد واجهة سطر الأوامر وتهيئتها، نزّل التمرين الأول، hello-world:

exercism download --exercise=hello-world --track=javascript

يحتاج كل تمرين بعد ذلك إلى بعض الأدوات لتشغيل الاختبارات. ويمكن تثبيتها بتشغيل هذا الأمر داخل مجلد كل تمرين:

corepack pnpm install

وبما أن هذا المسار قد انتقل إلى pnpm، فلا داعي للقلق بشأن مساحة القرص. ألقِ نظرة على pnpm، فهي تضمن ألا تُثبَّت على القرص إلا نسخة واحدة من كل إصدار حزمة.

لكن ما هو corepack ولماذا ينجح هذا؟

لا تحتاج إلى هذه المعلومات لإكمال مسار JavaScript، لكن إن كنت متشوقًا لفهم ما حدث للتو، فالفقرات التالية لك:

ينجح هذا لأن corepack أداة مرفقة مع Node.js، الذي ثُبّت وفق الخطوات أعلاه. وهي تستطيع تثبيت مدير الحزم pnpm. وهي تهيّئ النظام يبحث الأمر corepack عن ملف package.json، وهو موجود في مجلد كل تمرين. ثم يتحقق من packageManager المطابق لـ pnpm، فيمكنه المتابعة. وإذا لزم الأمر، فسيُحدّث pnpm أولًا. ويسرد هذا الملف أيضًا "dependencies" المذكورة أعلاه، وهي التي ينزّلها pnpm ويضعها في ذاكرة تخزين مؤقت محلية.

تستخدم السكربتات الموجودة في package.json الملفات الثنائية من الذاكرة المؤقتة المحلية، وهذه السكربتات هي المستخدمة في تشغيل الاختبارات، كما هو مذكور في وصف exercise.