Kotlin DSL'de Özel Görevler Yazma
Kotlin DSL kullanarak tür güvenli ve yeniden kullanılabilir özel Gradle görevleri oluşturun; türlendirilmiş özelliklerden, tembel yapılandırmadan ve temiz kayıt örüntülerinden yararlanın.
Kotlin DSL'de Özel Görevler Yazma, CoddyKit'te ücretsiz bir Groovy & Gradle: JVM Automation and Build Engineering dersidir. Bu, 4 dersinin 4. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Groovy & Gradle: JVM Automation and Build Engineering öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Groovy & Gradle: JVM Automation and Build Engineering kursu toplamda 4 dersten oluşur.
Bu dersin bazı bölümleri henüz çevrilmemiş olup İngilizce olarak gösterilmektedir.
Why Custom Tasks?
Built-in tasks cover common work, but real builds need project-specific automation: code generation, asset processing, custom checks. The Kotlin DSL makes these typesafe and readable.
Ad-hoc Task Registration
The simplest task is registered inline with an action block.
tasks.register("hello") {
doLast {
println("Hello from Gradle")
}
}register vs create
Prefer register over create: registration is lazy, so the task is only configured if it is actually needed, improving configuration time.
Typed Task Classes
For reusable logic, define a class extending DefaultTask with an annotated action.
abstract class GreetTask : DefaultTask() {
@TaskAction
fun run() {
println("Hi")
}
}Typed Properties
Use Gradle Property types for lazy, configurable inputs that integrate with the build model.
abstract class GreetTask : DefaultTask() {
@get:Input
abstract val name: Property<String>
}Registering a Typed Task
Register the class and configure its properties in the Kotlin DSL with full type checking.
tasks.register<GreetTask>("greet") {
name.set("Ada")
}Inputs and Outputs
Annotate properties so Gradle can make the task incremental and cacheable.
@get:OutputFile
abstract val report: RegularFilePropertyLazy Configuration
Lazy Provider values defer computation until needed, avoiding work during configuration and enabling correct task dependencies.
val versionProvider = providers.gradleProperty("appVersion")Wiring Task Dependencies
Express order with dependsOn, or better, wire outputs of one task into the inputs of another so Gradle infers the order.
tasks.register("publishDocs") {
dependsOn("generateDocs")
}Reusing Across Modules
Move the task class into buildSrc or a convention plugin so every module can register it without duplication.
Kotlin DSL Advantages
Compared to Groovy, the Kotlin DSL gives:
- IDE autocompletion and refactoring
- Compile-time error detection
- Easier navigation to task sources
Quick Check
Test your understanding of custom tasks.
Recap
You learned custom tasks in Kotlin DSL:
- Use lazy
registerovercreate - Define typed tasks extending
DefaultTask - Use
Propertyand annotations for typed inputs/outputs - Reuse via
buildSrcor convention plugins
Sıkça Sorulan Sorular
“Kotlin DSL'de Özel Görevler Yazma” dersi ücretsiz mi?
Evet — “Kotlin DSL'de Özel Görevler Yazma” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Groovy & Gradle: JVM Automation and Build Engineering kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Groovy & Gradle: JVM Automation and Build Engineering kursu toplamda 4 dersten oluşur.
“Kotlin DSL'de Özel Görevler Yazma” dersinde ne öğreneceğim?
Kotlin DSL kullanarak tür güvenli ve yeniden kullanılabilir özel Gradle görevleri oluşturun; türlendirilmiş özelliklerden, tembel yapılandırmadan ve temiz kayıt örüntülerinden yararlanın. Groovy & Gradle: JVM Automation and Build Engineering ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
Groovy & Gradle: JVM Automation and Build Engineering öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te Groovy & Gradle: JVM Automation and Build Engineering, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 4. dersidir.
“Kotlin DSL'de Özel Görevler Yazma” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu Groovy & Gradle: JVM Automation and Build Engineering dersinde kod yazıp çalıştırabilir miyim?
Evet. Her Groovy & Gradle: JVM Automation and Build Engineering dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- Gradle için Kotlin DSL
- Çok Dilli Proje Derlemeleri
- IDE Entegrasyonu ve Araçlar
- Kotlin DSL'de Özel Görevler Yazma