"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > npm مقابل npx

npm مقابل npx

تم النشر بتاريخ 2024-11-08
تصفح:667

npm Vs npx

إذا كنت تعمل مع Node.js، فمن المحتمل أنك واجهت كلاً من npm وnpx.
على الرغم من أنهما يبدوان متشابهين وكلاهما جزء لا يتجزأ من النظام البيئي Node.js، إلا أنهما يخدمان أغراضًا مختلفة. ستستكشف هذه المقالة الاختلافات بين npm وnpx، مما يساعدك على فهم متى ولماذا تستخدم كل منهما.

ما هو NPM؟

NPM، اختصار لـ Node Package Manager، هو مدير الحزم الافتراضي لـ Node.js. يسمح للمطورين بتثبيت ومشاركة وإدارة الحزم (المكتبات أو وحدات التعليمات البرمجية) في مشاريعهم.

إليك بعض المهام الشائعة التي يساعد فيها npm:

  • تثبيت التبعيات:

npm install 


  • إدارة إصدارات الحزمة: تأمين إصدارات محددة من المكتبات لضمان بنيات متسقة.

  • تشغيل البرامج النصية الخاصة بالمشروع: محددة في ملف package.json.


npm run 


ما هو NPX؟

npx هي أداة تم تقديمها في الإصدار 5.2.0 من NPM (يوليو 2017). بينما يدير npm التبعيات والحزم، تم تصميم npx لتنفيذ حزم Node.js، وخاصة أدوات CLI، دون تثبيتها عالميًا.

الاختلافات الرئيسية بين NPM وNPX

1. تثبيت الحزمة مقابل التنفيذ

  • NPM: عند تثبيت حزمة باستخدام npm، فإنه إما يقوم بتثبيت الحزمة عالميًا أو محليًا في دليل المشروع الخاص بك. وهذا يعني أنه يتعين عليك تثبيت الحزمة أولاً قبل أن تتمكن من استخدامها.

npm install -g create-react-app
create-react-app my-app


  • NPX : باستخدام npx، يمكنك تشغيل أدوات CLI أو الملفات التنفيذية دون تثبيتها عالميًا. على سبيل المثال، يمكنك تشغيل create-react-app دون تثبيته عالميًا.

npx create-react-app my-app


يوفر هذا الوقت ومساحة القرص حيث تتجنب تثبيت الحزم التي قد تستخدمها مرة واحدة فقط.


2. الباقات العالمية
عند استخدام npm، يتم تثبيت الحزم العامة وتستمر عبر نظامك، مما قد يؤدي في بعض الأحيان إلى فوضى في بيئتك.

باستخدام npx، يمكنك تنفيذ الحزمة دون القلق بشأن الاحتفاظ بها على نظامك بشكل دائم.

مثال على تثبيت حزمة عالميًا باستخدام npm:


npm install -g typescript
tsc --version



مع npx، لا يلزم التثبيت العام:


npx tsc --version



3. التعامل التلقائي مع الطرود
عند تشغيل أمر باستخدام npx، فإنه يتحقق تلقائيًا مما إذا كانت الحزمة موجودة محليًا أو عالميًا، وإذا لم تكن موجودة، فسيتم تنزيلها وتنفيذها مؤقتًا. وهذا مفيد بشكل خاص لتشغيل المهام لمرة واحدة.

على سبيل المثال:


npx cowsay "Hello, World!"


سيؤدي هذا إلى تنزيل حزمة Cowsay إذا لم تكن مثبتة، وتشغيلها، ثم تنظيفها بعد ذلك.


4. حزمة الملفات التنفيذية بدون نصوص
عند تشغيل أمر محدد في البرامج النصية package.json باستخدام npm، ستكتب:


npm run my-script


ولكن باستخدام npx، يمكنك تشغيل الأوامر القابلة للتنفيذ مباشرة:


npx my-script


هذا مفيد بشكل خاص إذا لم يتم تعريف البرنامج النصي بشكل صريح في package.json.

متى يتم استخدام NPM

- إدارة التبعيات: استخدم npm لتثبيت تبعيات المشروع وتحديثها وإزالتها.

- تشغيل البرامج النصية الخاصة بالمشروع: محددة في package.json ومصممة خصيصًا لمشروعك.

- إدارة إصدارات الحزمة: تأمين إصدارات محددة من المكتبات للحفاظ على اتساق المشروع.

متى يتم استخدام NPX

- تنفيذ الحزمة لمرة واحدة: استخدم npx للحزم التي لا ترغب في تثبيتها عالميًا، مثل أدوات CLI التي ستستخدمها مرة واحدة فقط.

- تشغيل الملفات التنفيذية: بالنسبة لأوامر مثل create-react-app، يتيح لك npx تشغيلها دون تثبيت عام.

- اختبار إصدارات مختلفة: تنفيذ إصدار محدد من الأداة بسرعة دون الحاجة إلى تثبيتها.

أخيرًا، تعد كل من npm وnpx أدوات أساسية في النظام البيئي Node.js، لكنهما يخدمان أغراضًا مختلفة. استخدم npm لإدارة تبعيات مشروعك وnpx لتنفيذ الحزم دون التثبيت الدائم.

هذا التمييز البسيط يمكن أن يجعل سير عملك أكثر كفاءة، مما يوفر الوقت ويتجنب عمليات التثبيت العالمية غير الضرورية.

بيان الافراج تم نشر هذه المقالة على: https://dev.to/jagroop2001/npm-vs-npx-1anc?1 إذا كان هناك أي انتهاك، يرجى الاتصال بـ [email protected] لحذفه
أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3