جرادل (بالإنجليزية: Gradle)‏ هي أداة لبناء وأتمتة عمليات تطوير البرمجيات، وتُستخدم لتسهيل التحكم في دورة حياة البرمجيات بدءًا من تجميع الكود وتعبئته، وصولًا إلى الاختبار والتوزيع. تدعم Gradle عدة لغات برمجية منها Java و Kotlin و Groovy و Scala، بالإضافة إلى C/C++ و JavaScript. تعتمد الأداة على مفاهيم Apache Ant و Maven، لكنها تميز نفسها باستخدام لغة خاصة بالمجال (DSL) تستند إلى Groovy و Kotlin، بدلاً من استخدام تكوينات XML التي يعتمدها Maven. يعتمد Gradle على بنية الرسم البياني غير الدوري الموجه (DAG) لإدارة التبعيات وتحديد ترتيب تنفيذ المهام، ويعمل على Java Virtual Machine (JVM) لتقديم أداء عالي وكفاءة في إدارة المشاريع.

تم تصميم Gradle لدعم عمليات بناء المشاريع الكبيرة ومتعددة الوحدات، حيث يعتمد على سلسلة من مهام البناء التي يمكن تنفيذها بترتيب تسلسلي أو بالتوازي، مما يتيح تسريع عملية البناء. يدعم Gradle عمليات البناء التدريجية من خلال تحديد الأجزاء من شجرة البناء التي لم تتغير، مما يعني أن المهام التي تعتمد فقط على هذه الأجزاء لا تُعاد تنفيذها، مما يزيد من كفاءة الأداء. كما يوفر التخزين المؤقت لمكونات البناء (Build Cache) الذي يمكن استخدامه عبر شبكة مشتركة.

عند دمج Gradle مع خدمة Develocity، يمكن الحصول على تقارير تصورية لعملية البناء عبر الويب، تُعرف بـ Gradle Build Scans، مما يساعد المطورين على تحليل أداء البناء وتتبعه. يتسم Gradle بالمرونة والقابلية للتوسع، حيث يتيح إضافة ميزات جديدة ودعم لغات برمجة إضافية من خلال نظام الإضافات (Plugins)، مما يجعله مناسبًا لمختلف البيئات والمشاريع.

يوزيع Gradle كبرنامج مفتوح المصدر بموجب ترخيص Apache 2.0، مما يتيح للمطورين استخدامه وتعديله بحرية. تم إصدار الأداة لأول مرة في عام 2008، وسرعان ما أصبحت من الأدوات الأساسية في عمليات البناء لعدد كبير من المشاريع البرمجية.

تاريخ

عدل

أصل الاسم

عدل

قال المؤسس والرئيس التنفيذي هانز دوكتر إنه أراد في الأصل تسمية المشروع "Cradle". ومع ذلك، لجعل الاسم فريدًا وأقل "تصغيرًا"، اختار "Gradle" بدلاً من ذلك، آخذًا الحرف "G" من استخدام Groovy . [10]

الإصدارات الرئيسية

عدل
إصدار تاريخ
0.1 21 أبريل 2008 [11]
1.0 12 يونيو 2012 [12]
2.0 1 يوليو 2014
3.0 15 أغسطس 2016
4.0 14 يونيو 2017
5.0 26 نوفمبر 2018
6.0 8 نوفمبر 2019
7.0 9 أبريل 2021
8.0 13 فبراير 2023

سمات

عدل

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

المكونات الإضافية هي أحد المكونات الأساسية لـ Gradle. إنها تسمح بدمج مجموعة من التكوينات والمهام في مشروع ويمكن تضمينها من مستودع المكونات الإضافية المركزي أو تطويرها خصيصًا لمشروع واحد.

توزيع

عدل

يتوفر Gradle كتنزيل منفصل، ولكن يمكن أيضًا العثور عليه مضمنًا في منتجات مثل Android Studio . Gradle Wrapper هي الطريقة الموصى بها لاستدعاء Gradle. يمكن تنزيل الإصدار المعلن من Gradle مسبقًا إذا لزم الأمر. [14]

مراجع

عدل
  1. ^ وصلة مرجع: https://github.com/gradle/gradle/graphs/contributors?from=2008-03-09&to=2023-01-25&type=c.
  2. ^ ا ب وصلة مرجع: https://github.com/gradle/gradle/graphs/contributors?from=2008-03-09&to=2023-01-25&type=a.
  3. ^ ا ب الوصول: 22 فبراير 2017. وصلة مرجع: https://api.github.com/repos/gradle/gradle.
  4. ^ الوصول: 5 أكتوبر 2016.
  5. ^ "The gradle Open Source Project on Open Hub: Languages Page". أهلوه. اطلع عليه بتاريخ 2018-07-18.
  6. ^ وصلة مرجع: https://gradle.com/our-story/.
  7. ^ ا ب وصلة مرجع: https://github.com/gradle/gradle/releases/tag/v8.11.1.
  8. ^ الوصول: 7 أكتوبر 2016.
  9. ^ "The gradle Open Source Project on Open Hub: Licenses Page". أهلوه. اطلع عليه بتاريخ 2018-07-18.
  10. ^ "Why is gradle called gradle?". Gradle Forums (بالإنجليزية). 20 Dec 2011. Retrieved 2022-06-30.
  11. ^ "Index of /gradle". 12 مايو 2008. مؤرشف من الأصل في 2008-05-12. اطلع عليه بتاريخ 2021-10-15.
  12. ^ "Gradle | Releases". Gradle (بالإنجليزية الأمريكية). Archived from the original on 2024-08-24. Retrieved 2021-10-15.
  13. ^ "Building Java & JVM projects". 24 يونيو 2023. مؤرشف من الأصل في 2022-10-18. اطلع عليه بتاريخ 2023-06-24.
  14. ^ "Gradle Wrapper Reference". Gradle User Manual. مؤرشف من الأصل في 2019-03-05. اطلع عليه بتاريخ 2024-03-04.

وصلات خارجية

عدل