البرمجة

تحسين أداء البناء باستخدام أوامر npm وملفات bash

في السعي لتحسين وتسهيل عملية تنفيذ مهام البناء الخاصة بتطبيق الويب الخاص بك باستخدام npm، يظهر أمامنا سيناريو يستفيد من تنظيم الأوامر المعقدة في ملفات bash script. يمكننا تحقيق ذلك بإضافة تكوين إضافي إلى ملف package.json الخاص بك.

للبداية، يمكنك إنشاء ملف bash script يحتوي على الأوامر التي ترغب في تنفيذها وحفظه في مجلد البرنامج. في مثالك، قد يكون هذا الملف build.sh. يمكنك أيضًا إضافة هذا الملف إلى مجلد يسمى مثلاً “scripts” لتنظيم الأمور.

الآن، يمكنك تعديل ملف package.json الخاص بك ليشير إلى هذا السكربت. قم بإضافة مفتاح “scripts” واستخدم اسم السكربت كقيمة للأمر الذي تريد تنفيذه. على سبيل المثال:

json
"scripts": { "build": "./scripts/build.sh" }

في هذا المثال، يُفترض أن يكون ملف build.sh داخل مجلد scripts. استخدم “./scripts/build.sh” كقيمة لسكربت البناء. هذا يوفر مسارًا نسبيًا لموقع السكربت داخل مشروعك.

عندما تقوم بتشغيل “npm run build”، سيقوم npm بتنفيذ الأمر المحدد في ملف السكربت. يمكنك أيضًا تغيير أذونات الملف باستخدام “chmod +x scripts/build.sh” لضمان إمكانية تنفيذه.

يمكن أن يكون هذا النهج فعالًا لتنظيم وإدارة مهام البناء بشكل أفضل وتسهيل الصيانة والتوسع في المشروع.

المزيد من المعلومات

بالتأكيد، دعنا نقوم بفحص بعض النقاط الإضافية والتفاصيل التي قد تكون مفيدة لك في هذا السياق.

أولاً، يمكنك تحديد العديد من السكربتات في قسم “scripts” بملف package.json الخاص بك. على سبيل المثال، إذا كنت بحاجة إلى أوامر متعددة لعمليات البناء، يمكنك تعريفها كما يلي:

json
"scripts": { "build": "./scripts/build.sh", "lint": "./scripts/lint.sh", "test": "./scripts/test.sh" }

هذا يمكن أن يجعل تشغيل مهام متعددة أمرًا سهلاً باستخدام “npm run” متبوعًا باسم السكربت.

ثانياً، يمكنك استخدام متغيرات البيئة في السكربتات لجعلها أكثر قابلية للتكوين وإعادة الاستخدام. على سبيل المثال، يمكنك تعريف متغير في package.json واستخدامه في السكربت:

json
"scripts": { "build": "BUILD_MODE=production ./scripts/build.sh", "lint": "./scripts/lint.sh" }

ثم يمكنك الوصول إلى هذا المتغير داخل السكربت build.sh باستخدام “$BUILD_MODE”.

وأخيرًا، يمكنك أيضًا النظر في استخدام أدوات إضافية مثل “npm-run-all” لتنظيم وتشغيل مهام متعددة بشكل متزامن أو توالٍ. يمكنك تثبيتها باستخدام:

bash
npm install npm-run-all --save-dev

ثم يمكنك تعريف مهام متوازية في package.json كما يلي:

json
"scripts": { "build": "npm-run-all --parallel build-css build-js", "build-css": "your-css-build-command", "build-js": "your-js-build-command" }

هذا يسمح بتنفيذ عمليات البناء للأنماط والجافا سكريبت بشكل متزامن.

مقالات ذات صلة

زر الذهاب إلى الأعلى

هذا المحتوى محمي من النسخ لمشاركته يرجى استعمال أزرار المشاركة السريعة أو تسخ الرابط !!