بناء البرمجيات
عملية بناء البرمجيات هي عملية تحويل ملفات الشفرة المصدرية إلى منتج برمجي مستقل (أو منتجات برمجية مستقلة) يمكن تشغيلها على جهاز كمبيوتر، أو هي نتيجة هذه العملية. [ 1 ] وتشمل وظائف مثل التحكم في الإصدارات، وتحليل جودة الشفرة، والترجمة، والربط.
في مجال إنتاج البرمجيات، تعمل عمليات البناء على تحسين أداء البرمجيات وتوزيعها، وتغليفها في تنسيقات مثل ' .exe' و'.deb' و'.apk' . [ 2 ] [ 3 ]
تستخدم عملية البناء غالبًا أدوات متخصصة مثل CMake وMake و Gradle ، وتتكامل مع أنظمة الأتمتة بما في ذلك Jenkins أو GitHub Actions . وعلى الرغم من التطورات، لا تزال هناك تحديات مثل تعارضات التبعيات، وتوافق المنصات، وأوقات التجميع الطويلة. [ 4 ] [ 5 ] [ 6 ]
الوظائف
في مجال تطوير البرمجيات ، يُعد بناء البرمجيات عملية شاملة تتضمن العديد من الوظائف المتميزة. بعض هذه الوظائف موضحة أدناه.
التحكم في الإصدار
تُنفّذ وظيفة التحكم في الإصدارات أنشطةً مثل إنشاء مساحات العمل وتحديثها، ووضع الخطوط الأساسية، وإعداد التقارير. كما تُهيئ بيئةً لتشغيل عملية البناء، وتلتقط بيانات وصفية حول مدخلات ومخرجات عملية البناء لضمان قابلية التكرار والموثوقية.
تساعد أدوات مثل Git و AccuRev و StarTeam في هذه المهام من خلال توفير أدوات لوضع علامات على نقاط محددة في التاريخ باعتبارها مهمة، وأكثر من ذلك.
جودة الكود
تُعرف هذه الوظيفة أيضاً باسم تحليل البرنامج الثابت/تحليل الكود الثابت، وهي مسؤولة عن التحقق من التزام المطورين بالمحاور السبعة لجودة الكود: التعليقات، واختبارات الوحدة، والتكرار، والتعقيد، وقواعد البرمجة، والأخطاء المحتملة، والهندسة المعمارية والتصميم. [ 7 ]
يؤدي ضمان جودة الكود في المشروع إلى تقليل الأخطاء ويؤثر على المتطلبات غير الوظيفية مثل سهولة الصيانة والتوسع وسهولة القراءة؛ والتي لها تأثير مباشر على عائد الاستثمار للشركة. [ 8 ]
تجميع
هذه مجرد ميزة بسيطة لإدارة عملية البناء. تقوم وظيفة التجميع بتحويل ملفات المصدر إلى ملفات تنفيذية مباشرة أو ملفات وسيطة. ليس كل مشروع يتطلب هذه الوظيفة.
بينما تتكون عملية تجميع البرامج البسيطة من ملف واحد ، فإن شفرة المصدر للبرامج المعقدة قد تتكون من العديد من الملفات ويمكن دمجها بطرق مختلفة لإنتاج العديد من الإصدارات المختلفة.
الربط

الرابط أو محرر الروابط هو برنامج حاسوبي يجمع ملفات بناء البرامج الوسيطة، مثل ملفات الكائنات والمكتبات، في ملف تنفيذي واحد ، كبرنامج أو مكتبة . غالبًا ما يكون الرابط جزءًا من سلسلة أدوات تتضمن مُصرّفًا و/أو مُجمّعًا يُولّد الملفات الوسيطة التي يعالجها الرابط. قد يكون الرابط مُدمجًا مع أدوات أخرى في سلسلة الأدوات بحيث لا يتفاعل المستخدم معه مباشرةً.
يُطلق على النسخة الأبسط التي تكتب مخرجاتها مباشرةً إلى الذاكرة اسم المُحمِّل ، على الرغم من أن التحميل يُعتبر عادةً عملية منفصلة. [ 9 ] [ 10 ]
أدوات البناء
تُدار عملية بناء برنامج حاسوبي عادةً بواسطة أداة بناء ، وهي برنامج يُنسق ويتحكم في برامج أخرى. من أمثلة هذه البرامج: make و Gradle و Ant و Maven و Rake و SCons و Phing. تحتاج أداة البناء عادةً إلى تجميع الملفات المختلفة بالترتيب الصحيح. إذا لم يتغير الكود المصدري في ملف معين، فقد لا يحتاج إلى إعادة تجميع ("قد لا" بدلاً من "لا يحتاج" لأنه قد يعتمد بدوره على ملفات أخرى تغيرت). تحاول أدوات البناء والروابط المتطورة تجنب إعادة تجميع الكود الذي لا يحتاج إلى ذلك، لتقليل الوقت اللازم لإتمام عملية البناء. قد تتضمن عملية أكثر تعقيدًا برامج أخرى تُنتج الكود أو البيانات كجزء من عملية البناء والبرمجيات.

انظر أيضاً
مراجع
- ↑ "ما هو البناء؟" . موسوعة التكنولوجيا . 6 سبتمبر 2011. تم الاسترجاع في 4 أبريل 2020 .
- ↑ بايفيلد، بروس. "تنسيقات الحزم العالمية واختلافاتها » مجلة لينكس" . مجلة لينكس . تم الاطلاع عليه بتاريخ 2024-12-06 .
- ↑ "ما هي حزمة البرامج؟" . GeeksforGeeks . 2024-02-26 . تم الاطلاع عليه بتاريخ 2024-12-06 .
- ↑ "دليل شامل لعملية تطوير البرمجيات - مجموعة نت" . netgroup.com . 14 فبراير 2022. تاريخ الاطلاع: 6 ديسمبر 2024 .
- ↑ "عملية بناء البرمجيات (دليل كامل)" . devopsbuzz.com . 10-10-2015 . تم الاطلاع عليه بتاريخ 06-12-2024 .
- ↑ "ما هي عملية بناء البرمجيات؟ دليل شامل في عام 2024 - شركة هابي" . 19 فبراير 2024. تاريخ الاطلاع: 6 ديسمبر 2024 .
- ↑ "برنامج SonarQube™" . تم الاطلاع عليه بتاريخ 4 يناير 2014 .
- ↑ موشكو، بنيامين (9 مارس 2014). غرادل في العمل . دار مانينغ للنشر. رقم ISBN 9781617291302.
- ↑ محرر ومحمل ربط نظام التشغيل من IBM (ملف PDF) . شركة IBM . 1972. مؤرشف (ملف PDF) من الأصل بتاريخ 2020-03-06 . تم الاطلاع عليه بتاريخ 2020-03-07 .
- ↑ بارون، ديفيد ويليام (1978) [1971، 1969]. "5.7. محررات ومجمعات الربط". كُتبت في جامعة ساوثهامبتون ، ساوثهامبتون، المملكة المتحدة. في فلوريتين، ج. جون (محرر). المجمعات والمحملات . دراسات حاسوبية ( الطبعة الثالثة). نيويورك، الولايات المتحدة: إلسيفير نورث هولاند. الصفحات 65-66 . ISBN 0-444-19462-2. إل سي سي إن 78-19961 .
- تطوير البرمجيات
- برمجة الحاسوب
