Gradle Kotlin DSL
أساسيات build.gradle.kts
Gradle Kotlin DSL درس مجاني في Kotlin Academy على CoddyKit. هذا هو الدرس 1 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Kotlin Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Kotlin Academy 4 دروس في المجموع.
ما هي Gradle Kotlin DSL؟
يمكن كتابة ملفات إنشاء Gradle باستخدام Groovy (build.gradle) أو Kotlin (build.gradle.kts). وتمنحك Kotlin DSL أمان الأنواع والإكمال التلقائي في بيئة التطوير المتكاملة.
لماذا .kts؟
مزايا Kotlin DSL:
- التحقق من ملف الإنشاء في وقت الترجمة
- الإكمال التلقائي والتنقل في بيئة التطوير المتكاملة
- اللغة نفسها المستخدمة في رمز تطبيقك
أما المقابل فهو أن ترجمة الملف النصي للمرة الأولى تكون أبطأ قليلًا.
كتلة plugins
تطبّق كتلة plugins { } إضافات Gradle. وهنا تفعّل Kotlin وتغليف التطبيق وغير ذلك.
plugins {
kotlin("jvm") version "2.0.0"
application
}المجموعة والإصدار
حدّد إحداثيات المشروع في المستوى الأعلى. وتصبح هذه الإحداثيات جزءًا من هوية الحزمة المنشورة.
group = "com.example"
version = "1.0.0"كتلة repositories
صرّح بالمكان الذي ينزّل منه Gradle الاعتماديات. ويُعد mavenCentral() الخيار الأكثر شيوعًا.
repositories {
mavenCentral()
google()
}كتلة dependencies
أدرج اعتمادياتك حسب إعداداتها. تستخدم Kotlin DSL استدعاءات دوال مع إحداثيات نصية.
dependencies {
implementation("com.google.guava:guava:33.2.1-jre")
testImplementation(kotlin("test"))
}تهيئة الامتدادات
تضيف الإضافات امتدادات ذات أنواع محددة. ومع إضافة application، تحدد الفئة الرئيسية باستخدام كتلة application { }.
application {
mainClass.set("com.example.MainKt")
}تعيين الخصائص
تكون العديد من قيم DSL كائنات من النوع Property، ويتم تعيينها باستخدام .set(...). كما تدعم إصدارات Gradle الأحدث التعيين باستخدام =.
tasks.jar {
archiveBaseName.set("my-app")
}settings.gradle.kts
يسمّي ملف settings.gradle.kts المشروع، ويضمّن الوحدات الفرعية في عملية إنشاء متعددة الوحدات.
rootProject.name = "my-app"
include(":core", ":app")تشغيل المهام
استدعِ المهام من سطر الأوامر باستخدام Gradle wrapper.
// ./gradlew build
// ./gradlew run
// ./gradlew test
// ./gradlew tasks (list available tasks)Groovy مقابل Kotlin DSL
الفروق الأساسية في الصياغة:
- تستخدم السلاسل النصية علامات اقتباس مزدوجة في Kotlin (وعلامات اقتباس مفردة في Groovy)
- تستخدم استدعاءات الأساليب الأقواس
- تستخدم الخصائص
.set()أو=بدلًا من التعيين باستخدام المسافة
تحقق سريع
أي ملف يستخدم Gradle Kotlin DSL؟
مراجعة
تعلّمت أساسيات Kotlin DSL:
- كتل
pluginsوrepositoriesوdependencies - امتدادات آمنة من حيث الأنواع وخصائص
.set() settings.gradle.ktsلبنية المشروع- تشغيل المهام باستخدام
./gradlew
التالي: الاعتماديات والإضافات بالتفصيل.
الأسئلة الشائعة
هل درس «Gradle Kotlin DSL» مجاني؟
نعم — نص درس «Gradle Kotlin DSL» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Kotlin Academy، انتقل إلى CoddyKit PRO. تتضمن دورة Kotlin Academy 4 دروس في المجموع.
ماذا ستتعلم في «Gradle Kotlin DSL»؟
أساسيات build.gradle.kts تتمرن على Kotlin Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ Kotlin Academy؟
لا تُشترط خبرة سابقة. Kotlin Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 1 من أصل 4.
كم من الوقت يستغرق درس «Gradle Kotlin DSL»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس Kotlin Academy هذا؟
نعم. كل درس في Kotlin Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- Gradle Kotlin DSL
- التبعيات والإضافات
- المهام المخصصة
- كتالوجات الإصدارات