ماهي Yarn وماذا اضافت

م

السلام عليكم

بالامس اعلنت فيس بوك بالتعاون مع جوجل عن مدير حزم Package Manager جديد يدعى Yarn 

فماهو وماذا اضاف وهل نحن في حاجة الى الاستغناء عن npm(Node Package Manager)

سنتعرف على هذا سوياً

في البداية Yarn ليس شئ جديد كلياً بل هو التطوير الطبيعي لل npm يسير على نفس النمط في تثبيت ال Packages وملف package.json

بدون npm لن يكون هناك Yarn 

فهو مبني عليه والجديد فيه انه اصلح بعض المشاكل والاخطاء وسهل بعض الامور التي كنا نشكو منها سابقاً 

  • لا يوجد مثبت حزم Offline 

       في npm عندما كنا نريد تحميل حزمة ما فانه يقوم بتحميلها مباشرة من المصدر الى المجلد الذي نريده , وفي حال قمنا بتكرار العملية في مكان مختلف سيقوم بعمل نفس الشئ تحميل الملف من المصدر واضافته للمجلد 

الجديد في Yarn هنا انه اصبح يخزن الPackages التي تريدها فبدلاً من الانتظار واعادة التحميل كل مرة هو سيحملها مرة واحدة وفي كل مرة تطلبها سيضيفها بدون الاتصال بالانترنت او التحميل لانه سجلها عنده

رائع اليس كذلك 😀 

  • الكثير من الوقت في npm تم تخفيضه في Yarn 

غالباً مانواجه صعوبة في طول وقت تحديث او اضافة حزمة Package جديدةللمشروع الخاص بنا , في Yarn تم تخفيض الوقت ليصبح اقل بكثير 

  • الاعتمادية 

npm كان يعتمد على الpackages الموجودة في npmjs.org فقط 

بينما yarn يعمل على كلا الجهتين npm و bower 

  • وأخيراً : فشل تثبيت الحزم

عند فشل تثبيت Package ما في مجموعة من ال Packages سيؤدي الى توقف وفشل التثبيت 

Yarn سيكمل العملية ويحاول اعادة طلب تثبيت ال Package .

 

تحدثنا كثيراً عن المميزات والاصلاحات , دعونا نجرب كيف نثبته وماهي اوامره وكيف يعمل 

 

يمكنك تحميل تثبيت Yarn من هنا 

او يمكنك استخدام الامر 

npm install yarn -g

للبدء في مشروع جديد داخل الـ Folder نكتب

yarn init

نحن في حاجة لتثبيت حزم لاستخدامها ولذلك نستخدم 

yarn add PackageName
yarn add PackageName --dev

وهو سيقوم بتحميلها واضافتها لـ package.json بدون flag –save
نقوم بكتابة -dev في حال ال Package في وضع التطوير فقط

في حال الحاجة لتحديث Package ما

yarn upgrade PackageName

 

وفي حالة تريد ان تحذف Package ما

yarn remove PackageName

لتثبيت Package كـ global 

yarn global add PackageName

كما يمكن ايضاً تحديث yarn نفسها عن طريق امر 

yarn self-update

ملاحظة

في حالة كان لديك ملف package.json وتريد تنصيب كل الـPackages التي فيه نكتب امر yarn install او  yarn فقط .

الخلاصة: Yarn ليست بديلاً كليا لـ npm وانما هي تطوير وتحسين له , لتحسين اداءه وسرعته.

عن الكاتب

أحمد مجدي

Full Stack Software Developer , Geek

أضف تعليقاً

هذا الموقع يستخدم Akismet للحدّ من التعليقات المزعجة والغير مرغوبة. تعرّف على كيفية معالجة بيانات تعليقك.