شنو هو ل Monorepo 🤔🤔

شنو هو ل Monorepo 🤔🤔

21 يونيو 2022|دقيقتين قراءة

ربما تكون فايت ليك سمعتي ب Monorepo لكن ما عرفتيش شنو كاتعني أو ربما عمرك ما سمعتي بها, ل Monorepo ماشي شي حاجة جديدة لكن مكانتش معروفة بزاف, حيت غير الشركات لكبار اللي كايستعملوها بزاف. مؤخرا شركة Vercel علنات على Turborepo اللي هي أدات كاتساعد على العمل بال Monorepos بالنسبة للمشاريع ديال Javascript.

الإعلان على Turborepo سلط الضوء على ل Monorepo بشكل كبير و ولا موضوع نقاش.

شنو هو ل Monorepo :

بلا شك عندك دراية بالمعنى ديال Repository اللي هو بكل بساطة مجلد كايحتاوي على الملفات الخاصة بمشروع ما, ل Monorepo هو Repository كايحتاوي على عدة مشاريع, كل مشروع في مجلد خاص به. بتعريف أخر نقدرو نقولو باللي ل Monorepo هو Repository كايحتاوي على عدة Repositories.

الإستعمال ديال ل Monorepo :

العديد من الشركات كايستعملو ل Monorepo عند العمل على المشاريع الكبيرة, كايكون المشروع كايتكون من أجزاء, مثلا ل Backend و ل Frontend و ل Mobile App. نقدرو نقولو أن كل جزء هو مشروع بحد داتو, كايتم إنشاء Monorepo كايحتاوي على جميع الأجزاء و كل جزء كايتكلف بالبناء ديالو مجموعة من المبرمجين.

الغرض من هاد ل Monorepo هو أن جميع المبرمجين يبقاو على إطلاع بجميع التغيرات اللي كاتطرى على المشروع , في سبيل المثال ل Frontend غايكون كايخدم بال Backend .... .

كاينين العديد من الأدوات اللي كايساعدو في إدارة ل Monorepo حيت كيف قلنا كايحتاوي على عدة مشاريع و هادشي غايشكل صعوبة في تتبع التغيرات و معالجة التعارضات sconflict اللي كاتوقع في ل Code .... مثلا في عالم Javascript كانلقاو Lerna , Turborepo , Nx .... .

هل يجب أن تتعلم إستعمال ل Monorepo ؟

الغرض من ل Monorepo هو تسهيل العمل بين المبرمجين على المشاريع الكبيرة, هادشي علاش مغاتلقاش مبرمج واحد خدام على مشروع بوحدو و كايستعمل ل Monorepo حيت ما عندو باش يفيدو و غير غايعقد الأمور على راسو.

أنت كمبرمج من الضروري تكون عندك دراية بال Monorepo واخا مغاتستعملوش, حيت ربما شي نهار غاتخدم مع شي مجموعة على شي مشروع و غاتلقا راسك قدام Monorepo .

خلاصة :

العمل الجماعي في مجال البرمجة صعب بزاف , هادشي علاش الشركات كايقادو خطط و أدوات اللي إساعدو في تسهيله لربح الوقت و الجهد.