Plugins

Gradle bertujuan menyediakan automisasi selengkap mungkin. Untuk melengkapi fitur dan kapabilitas gradle maka digunakan / disediakan plugin di gradle. Gradle Plugin dapat meningkatkan kapabilitas seperti memperluas Gradle Model, menerapkan konfigurasi tertentu (seperti repositori organisasi tertentu / standarisasi tertentu), dan sebagainya.

Dengan menggunakan plugin, beberapa benefit bisa kita dapatkan, seperti:
  1. Menerapkan penggunaan kembali dan pengurangan logika yang diulang terus menerus dalam sebuah project.
  2. Meningkatkan modularisasi, komprehensif, dan organisasi.
  3. Membuat build script sedeklaratif mungkin,

Gradle Plugins: Type
  1. Secara umum, terdapat 2 buah tipe plugin pada gradle yaitu Binary plugins dan Script Plugins.
  2. Binary Plugin ditulis secara programatik dengan menerapkan interface plugin atau deklrasi di dalam gradle. Binary plugin dapat disimpan di dalam build script dalam hirarki tertentu atau disimpan diluar dengan format .jar.
  3. Script Plugin merupakan build script tambahan yang dideklrasikan untuk menkonfigurasi dan memanipulasi sebuah build.

Script Plugins
  1. Untuk menerapkan script ini cenderung mudah yaitu dengan melakukan pemanggilan seperi dibawah ini:Plugins                                                                                 
  2. Script ini dapat tersimpan di local filesystem ataupun di lokasi remote dalam wujud HTTP URL. Dalam sebuah file build.gradle, dapat digunakan lebih dari 1 script plugin.

Binary Plugins
  1. Berbeda dengan Script Plugin, untuk menggunakan plugin ini, kita memerlukan id plugin tersebut. Id ini kemudian akan dipanggil dengan cara seperti berikut:Plugins
  2. Plugin id pada Binary Plugins cenderung unik dan tidak kembar. Beberapa binary plugin pada dasarnya sudah tersedia di dalam Gradle itu sendiri seperti JavaPlugin (Java) sehingga hanya perlu dideklrasikan saja.
  3. Terdapat berbagai macam cara untuk menambahkan plugin yang belum tersedia di gradle, antara lain:
    • Menyertakan plugin dari portal plugin / custom repository menggunakan plugin DSL.
    • Menyertakan plugin dari file .jar yang kemduian di definisikan pada build script
    • Mendefinisikan plugin sebagai sebuah source file didalam direktori buildSrc pada sebuah project
    • Mendefinisikan plugin sebagai sebuah deklrasi class dalam build script.

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