تعلّم كيف تثبّت JavaScript محليًا لحل تمارين Exercism على جهازك
يعتمد هذا المسار في كل مكان على Node.js لتوفير بيئة تشغيل لـ JavaScript. وهذا يعني أننا نفترض أن كل تنفيذ لـ JavaScript على حاسبك سيتم باستخدام Node.js.
تأتي كثير من الأجهزة وNode.js مثبّت عليها مسبقًا، أو ربما ثُبّت سابقًا، أو ثُبّت كاعتماد لأحد البرامج. لذا، قبل أن نفعل أي شيء، يجدر بنا أن نتحقق مما إذا كان مثبّتًا بالفعل:
Terminal، cmd، Powershell، bash، ...)node -vإذا كان Node.js مثبّتًا، فسيظهر إصدار ما.
دوّن هذا الإصدار.
وإذا لم يكن Node.js مثبّتًا، فستظهر رسالة خطأ.
وعادةً ما يكون شيء من قبيل 'node' is not recognised.
انتقل إلى موقع Node.js.
سيعرض إصدارين (إذا تعرّف على نظام تشغيلك. وإلا، فاختر نظام تشغيلك أولًا).
إذا طابق إصدار node -v لديك أحد هذين الإصدارَين، فأنت جاهز.
وإن لم يطابق، فنوصي باستخدام Node.js LTS.
إذا كنت قلقًا من أن الترقية قد تُفسد شيئًا في نظامك، فيمكنك المتابعة كما لو أن كل شيء على ما يرام؛
لكن قد لا نتمكن من تقديم الدعم إذا حدث شيء غير متوقع.
هناك طريقتان لتثبيت Node.js:
كلا الخيارَين يدعم Windows وmacOS وLinux. إذا لم تكن تعرف ما الذي عليك فعله، فاستخدام المثبّت هو الأسهل.
بعد أن ينتهي المثبّت، أو يكمل مدير الحزم عمله، أو تُنسخ النسخة الثنائية وتُتبع التعليمات، من الجيد أن تتحقق مما إذا كان كل شيء على ما يرام.
Terminal، cmd، Powershell، bash، ...)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 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.