مقدمة

مكتمل

أصبحت البرامج مفتوحة المصدر أساس تطوير البرمجيات الحديثة. من أطر عمل الويب وقواعد البيانات إلى أنظمة التشغيل وأدوات التطوير ، تعمل المكونات مفتوحة المصدر على تشغيل غالبية التطبيقات التي تم إنشاؤها اليوم. يعد فهم كيفية تنفيذ البرامج مفتوحة المصدر بشكل فعال مع إدارة المخاطر المرتبطة أمرا ضروريا لفرق التطوير والمؤسسات.

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

توفر هذه الوحدة إرشادات شاملة حول تنفيذ البرامج مفتوحة المصدر في بيئات المؤسسات. ستتعلم كيف يتم إنشاء البرامج الحديثة باستخدام مكونات مفتوحة المصدر ، وستفهم مخاوف الشركات بشأن الأمان والترخيص ، وتستكشف التراخيص مفتوحة المصدر الشائعة وآثارها ، وتكتشف استراتيجيات إدارة البرامج مفتوحة المصدر بشكل فعال.

ما تتعلمه

تغطي هذه الوحدة المعرفة الأساسية للعمل مع البرامج مفتوحة المصدر في البيئات الاحترافية:

  • فهم تطوير البرمجيات الحديثة: سوف تستكشف كيفية إنشاء التطبيقات المعاصرة من خلال الجمع بين التعليمات البرمجية الأصلية والمكتبات وأطر العمل والأدوات مفتوحة المصدر. ستتعرف على سبب اختيار المؤسسات للمكونات مفتوحة المصدر وفهم الفوائد التي تقدمها بما في ذلك التطوير الأسرع والحلول التي أثبتت جدواها ودعم المجتمع وتوفير التكاليف.

  • مخاوف الشركات بشأن البرامج مفتوحة المصدر: ستفحص المخاطر الأمنية والقانونية والتشغيلية التي تواجهها المؤسسات عند استخدام المكونات مفتوحة المصدر. يتضمن ذلك الثغرات الأمنية في التبعيات ، ومتطلبات الامتثال للترخيص ، ومخاطر سلسلة التوريد ، والمشاريع غير الصيانة أو المهجورة ، والتحدي المتمثل في إدارة آلاف التبعيات عبر تطبيقات متعددة.

  • أساسيات الترخيص مفتوح المصدر: ستتعرف على فئات مختلفة من التراخيص مفتوحة المصدر ، من التراخيص المتساهلة مثل MIT و Apache التي تسمح بالاستخدام التجاري الواسع ، إلى التراخيص المتروكة مثل GPL التي تتطلب أعمالا مشتقة لاستخدام نفس الترخيص. يساعدك فهم خصائص الترخيص على اتخاذ قرارات مستنيرة حول المكونات مفتوحة المصدر المناسبة لمشاريعك.

  • الآثار المترتبة على الترخيص للبرامج التجارية: ستكتشف كيف تؤثر التراخيص المختلفة على تطوير البرامج التجارية، بما في ذلك القيود المفروضة على البرامج الاحتكارية ومتطلبات الكشف عن التعليمات البرمجية المصدر ومتطلبات الإحالة ومخاوف توافق الترخيص. تمنع هذه المعرفة المشكلات القانونية التي قد تؤثر على قدرة مؤسستك على بيع البرامج أو توزيعها.

  • استراتيجيات إدارة المكونات مفتوحة المصدر: ستستكشف الأساليب العملية لتنفيذ البرامج مفتوحة المصدر بأمان ومتوافق، بما في ذلك الحفاظ على مخزونات المكونات، والبحث عن الثغرات الأمنية، وتتبع التزامات الترخيص، وإنشاء عمليات الموافقة، واستخدام الأدوات التلقائية لمراقبة التبعيات باستمرار.

الأهداف التعليمية

بعد الانتهاء من هذه الوحدة ، يمكنك:

  • فهم كيفية بناء البرامج الحديثة باستخدام مكونات مفتوحة المصدر والفوائد التي توفرها لسرعة التطوير والجودة والابتكار.
  • شرح مخاوف الشركات بشأن البرامج مفتوحة المصدر بما في ذلك الثغرات الأمنية والامتثال للترخيص ومخاطر سلسلة التوريد وتحديات إدارة التبعيات على نطاق واسع.
  • وصف التراخيص مفتوحة المصدر الشائعة بما في ذلك MIT و Apache 2.0 و GPL و BSD والتراخيص الأخرى ، وفهم خصائصها الرئيسية وأذوناتها وقيودها.
  • تقييم الآثار المترتبة على الترخيص على تطوير البرمجيات التجارية، وفهم التراخيص المتوافقة مع البرامج الاحتكارية والتي تتطلب الكشف عن التعليمات البرمجية المصدر.
  • تنفيذ استراتيجيات لإدارة المكونات مفتوحة المصدر بما في ذلك إدارة المخزون وفحص الثغرات الأمنية والتحقق من الامتثال للترخيص وإنشاء مهام سير عمل الموافقة للتبعيات الجديدة.

المتطلبات الأساسية

قبل بدء هذه الوحدة النمطية، يجب أن يكون لديك:

  • فهم تطوير البرمجيات: المعرفة الأساسية بكيفية بناء التطبيقات، بما في ذلك استخدام المكتبات والأطر والتبعيات.
  • الإلمام بمفاهيم DevOps: فهم التكامل المستمر والتسليم المستمر ودورة حياة تطوير البرمجيات.
  • تجربة التحكم في الإصدار: الخبرة الأساسية مع Git أو أنظمة التحكم في الإصدار الأخرى حيث تحدث إدارة التبعية.
  • الوعي بترخيص البرمجيات: فهم عام أن البرنامج له مصطلحات قانونية تحكم استخدامه ، حتى لو لم تكن قد درست تراخيص محددة بالتفصيل.

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