Task Konfigurasi, Eksekusi, Operasi, Build-in Task

Disegmen pembahasan akhir gradel yaitu membahas mengenai Task Konfigurasi, Eksekusi, Operasi, Build-in Task, berikut adalah ulasannya.

Task Declarations I
Seperti yang telah dicoba pada bagian sebelumnya. Untuk mendeklarasikan task dalam sebuah file build.gradle hanya diperlukan nama untuk task tersebut. Sebagai contoh kode berikut :

Task Konfigurasi, Eksekusi, Operasi, Build-in Task

Seperti yang terlihat pada gambar, task tersebut dapat dieksekusi. Namun tidak memiliki output. Hal tersebut terjadi karena tidak memiliki perintah / action yang harus dijalankan.

Task Declarations II
Dalam sebuah task dapat terdiri dari berbagai macam action seperti gambar berikut:

Task Konfigurasi, Eksekusi, Operasi, Build-in Task

Seperti yang terlihat setelah task di deklarasi kita bisa menambahkan action setelah deklarasi dilakukan. Hal tersebut merupakan salah satu keunggulan menggunakan gradle dimana task merupakan sebuah objek yang dapat dimanipulasi pada gradle.

Task: Configuration I
Perhatikan deklarasi task konfigurasi di-dibawah. Berdasarkan yang telah dipelajari, maka output yang diharapkan adalah seperti berikut:

Task Konfigurasi, Eksekusi, Operasi, Build-in Task

Task: Configuration II
Namun berikut output yang dihasilkan dari source code tersebut:

Task Konfigurasi, Eksekusi, Operasi, Build-in Task
  1. Pada Source Code tersebut, baris terakhir tidak menggunakan metode “doLast”. Dalam sebuah file build.gradle, task tanpa metode “doLast{}” akan dieksekusi paling awal, karena dianggap sebagai blok “konfigurasi”.
  2. Blok konfigrasi ini biasanya akan digunakan sebagai blok yang mengatur nilai awal variable hingga struktur data yang akan dibutuhkan ketika Task dijalankan. Dengan model ini kita dapat membuat Task dengan berbagai macam informasi awal sebelum task dieksekusi.

Task Object Property and Method
  1. Ketika Gradle mengeksekusi build, maka sebuah model internal objek akan dibuat. Objek ini berisi berbagai task yang kemudian akan membentuk sebuah project. Karena bersifat objek maka terdapat berbagai Metode dan Property di dalamnya.
  2. DefaultTask merupakan tipe Default untuk setiap task yang dibuat. Setiap task didalam gradle diturunkan dari DefaultTask tersebut.
  3. Berikut berbagai metode yang terdapat dalam DefaultTask.

DefaultTask Method: dependsOn (task) I
Perhatikan file build dibawah. File build tersebut berisi task yang umumnya digunakan ketika melakukan koneksi terhadap sebuah Database.

Task Konfigurasi, Eksekusi, Operasi, Build-in Task
  1. Metode dependOn merupakan metode yang menyatakan bahwa sebuah task harus dijalankan terlebih dahulu sebelum task yang lain berjalan.
  2. Metode dependOn dapat dideklrasikan dalam format quotes, non quotes, ataupun left-shift operator.
DefaultTask Method: dependsOn (task) II
Karena Groovy yang dinamis, penulisan code tersebut dapat diubah menjadi seperti gambar berikut:
Task Konfigurasi, Eksekusi, Operasi, Build-in Task

Seperti yang terlihat, pemanggilan langsung sebuah objek dapat dilakukan pada Bahasa groovy. Sehingga penulisan build.gradle dapat bervarian dan dinamis menyesuaikan pengguna. Ketika dijalankan, kedua source code tersebut akan menghasilkan hasil yang sama yaitu:

Task Konfigurasi, Eksekusi, Operasi, Build-in Task


DefaultTask Method: dependsOn (task) III
Dependancy tidak hanya dapat bergantung sebuah task saja. Sebuah task dapat bergantung lebih dari 1 task sebelum dieksekusi.

Task Konfigurasi, Eksekusi, Operasi, Build-in Task

DefaultTask Method: doFirst(closure)
Metode ini juga dapat dipanggil berkali-kali. Namun eksekusinya akan dilakukan mulai dari pemanggilan terakhir ke pemanggilan awal.

Task Konfigurasi, Eksekusi, Operasi, Build-in Task

DefaultTask Method: doLast (closure) I
Sebaliknya metode ini akan dikerjakan di akhir eksekusi berlawanan dengan doFirst.

Task Konfigurasi, Eksekusi, Operasi, Build-in Task

DefaultTask Method: doLast (closure) II
Sama seperti doFirst, doLast dapat dipanggil berkali-kali. Eksekusinya dilakukan dengan urutan dari pemanggilan pertama hingga pemanggilan terakhir.

Task Konfigurasi, Eksekusi, Operasi, Build-in Task

DefaultTask Method: onlyIf (closure)
Metode ini berfungsi untuk memberikan ekspresi / kondisional yang harus dipenuhi sebelum task di eksekusi, seperti contoh dibawah ini:

Task Konfigurasi, Eksekusi, Operasi, Build-in Task

DefaultTask
Pada script build.gradle, kita dapat mendeklrasikan “default task” yang dieksekusi apabila tidak ada nama task yang dituliskan ketika pemanggilan build gradle dilakukan.

Task Konfigurasi, Eksekusi, Operasi, Build-in Task

Kesimpulan
  1. Gradle merupakan alat automisasi yang banyak digunakan terutama dalam pembuatan aplikasi android.
  2. Perlu diperhatikan bahwa pemasangan gradle pada windows dilakukan secara manual dan biasanya terpasang dalam folder C:\Gradle
  3. Groovy merupakan bahasa pemrograman yang diturunkan dari Java dengan tujuan simplifikasi dan modernisasi sehingga penulisan sebuah code bisa menjadi lebih pendek. Namun di sisi lain Groovy juga memiliki kelemahan seperti memakan memori lebih banyak daripada Java.
  4. Prinsip Dasar Gradle adalah Project dan Task dimana Project merupakan kumpulan dari Task-Task. Task-Task tersebut berisi Action yang akan dieksekusi oleh Gradle.
  5. Demi memperlengkap fungsi yang bisa dijalankan pada Gradle, disediakan berbagai plugin yang bisa diakses oleh pengembang.

Sumber Referensi :
 guru99