Groovy Tutorial Skrip untuk Pemula

โšก Ringkasan Cerdas

Groovy Script adalah bahasa berorientasi objek untuk Java Platform yang mengkompilasi ke bytecode JVM. Platform ini menambahkan tipe dinamis.ping, penutupan, dan sintaksis yang ringkas untuk Java, dan itu memberi daya Jenkins saluran pipa, Gradle membangun, dan SoapUI pernyataan.

  • ๐Ÿงฉ Java cocok: Paling valid Java kode dikompilasi tanpa perubahan di Groovy, sehingga biaya pembelajaran tetap sangat rendah.
  • โšก Less teks standar: Satu baris `println` menggantikan kelas, metode `main`, dan panggilan `System.out`. Java tuntutan.
  • ๐Ÿ”€ Dinamis typing: Kata kunci `def` memungkinkan satu variabel untuk menyimpan bilangan bulat (Integer) dan kemudian string (String) saat runtime.
  • ๐Ÿ” Lingkaran kompak: Metode upto, times, dan step menggantikan perulangan for ala C yang bertele-tele dalam satu baris kode.
  • ๐Ÿ“ฆ Koleksi asli: List dan map memiliki sintaks literal ditambah fungsi pembantu seperti pop, keySet, dan sort.
  • ๐Ÿง  Penutupan: Blok kode bertindak sebagai objek, menerima parameter, mengembalikan nilai, dan bersarang di dalam closure lain.
  • โš™๏ธ Tiga alat: groovysh menyediakan shell, groovyConsole menyediakan GUI, dan groovy menjalankan file skrip secara langsung.

Groovy Tutorial Skrip untuk Pemula

Apa itu Groovy Naskah?

Apache Groovy adalah berorientasi objek, Java bahasa pemrograman yang kompatibel secara sintaksis yang dibangun untuk Java platform. Bahasa dinamis ini memiliki banyak fitur yang mirip dengan Python, Ruby, Smalltalk, dan Perl. Groovy kode sumber dikompilasi menjadi Java kode biner, sehingga dapat berjalan di platform mana pun yang memiliki Java Mesin virtual telah terpasang. Groovy Selain itu, ia juga melakukan banyak pekerjaan di balik layar, yang membuatnya terasa lebih gesit dan dinamis daripada sekadar tampilan biasa. Java.

A Groovy naskah hanyalah a .groovy berkas yang berisi pernyataan-pernyataan yang Groovy File tersebut dibungkus dalam kelas yang dihasilkan sebelum dijalankan. Itulah mengapa Anda dapat mengeksekusi file satu baris tanpa menulis kelas atau kode apa pun. main Metode. Groovy Oleh karena itu, dapat digunakan sebagai bahasa skrip untuk Java platform sambil tetap menawarkan kemampuan perusahaan JavaIni menambahkan fitur produktivitas seperti dukungan DSL, closure, dan tipe dinamis opsional.pingTidak seperti beberapa bahasa lain, bahasa ini dirancang sebagai pendamping bagi... Java, bukan penggantinya.

๐Ÿ’ก Kiat: Groovy 5.0 adalah rilis stabil saat ini dan ditargetkan untuk JDK 11 ke atas. Groovy Versi 4.0 tetap tersedia untuk proyek JDK 8, dan Groovy JDK 17 versi 6.0 masih dalam tahap alpha. Selalu periksa tabel persyaratan sistem di halaman unduhan resmi sebelum Anda memilih versi.

Mengapa Groovy?

Berikut adalah alasan-alasan utama mengapa Anda harus menggunakan dan mempelajarinya. Groovy:

  • Groovy adalah bahasa yang lincah dan dinamis.
  • Sistem ini terintegrasi dengan sempurna dengan semua sistem yang sudah ada. Java objek dan pustaka.
  • Rasanya mudah dan alami untuk Java pengembang.
  • Kode tersebut lebih ringkas dan lebih bermakna daripada kode yang setara. Java kode.
  • Anda bisa menggunakannya sebanyak atau sesedikit yang Anda inginkan di dalam ruangan. Java aplikasi.
  • Ini berjalan pada standar Java Mesin virtual, sehingga tidak diperlukan runtime terpisah.

Groovy Sejarah

  • 2003: Dimulai oleh James Strachan dan Bob McWhirmemiliki.
  • 2004: Diserahkan ke Java Proses Komunitas sebagaimana diatur dalam JSR 241, yang kemudian dicabut.
  • 2005: Dibawa kembali tracoleh Jeremy Rayner dan Guillaume Laforge.
  • 2007: Groovy 1.0 dirilis.
  • 2012: Groovy 2.0 dirilis.
  • 2014: Groovy Versi 2.3 dirilis dengan dukungan resmi untuk JDK 8.
  • 2015: Groovy menjadi proyek tingkat atas di Apache Software. Foundation.
  • 2022: Groovy Versi 4.0 dirilis, dengan koordinat Maven dipindahkan ke org.apache.groovy.
  • 2025: Groovy Versi 5.0 dirilis untuk JDK 11 dan versi yang lebih tinggi.

Fitur Groovy

  • Literal daftar, peta, rentang, dan ekspresi reguler.
  • Multimethod (pengiriman metode saat runtime) dan metaprogramming.
  • Groovy Kelas dan skrip biasanya disimpan di .groovy file.
  • Skrip berisi Groovy pernyataan tanpa deklarasi kelas apa pun.
  • Skrip juga dapat berisi definisi metode di luar definisi kelas.
  • Groovy kode dapat dikompilasi dan diintegrasikan sepenuhnya dengan sistem tradisional Java aplikasi.
  • Dukungan tingkat bahasa untuk peta, daftar, dan ekspresi reguler.
  • Dukungan untuk penutupan, tipe dinamisping, dan protokol meta-objek.
  • Dukungan untuk tipe statis dan dinamisping, ditambah lagi dengan beban kerja operator yang berlebihan.
  • Pemeriksaan tipe statis opsional melalui @TypeChecked ke @CompileStatic penjelasan.

Cara Install Groovy

Langkah 1) Pastikan Anda memilikinya Java diinstal.

Langkah 2) Pergi ke https://groovy.apache.org/download.html Dan klik Windows tautan penginstal.

Groovy Halaman unduhan dengan tautan penginstal.

Catatan: Anda juga dapat menginstal Groovy dari file Zip biner, melalui pengelola paket seperti SDKMAN!, Homebrew, Scoop, atau Chocolatey, atau sebagai plugin untuk aplikasi Anda. Java IDE. Dalam Groovy panduan langkah demi langkah yang akan kita ikuti Windows pemasang.

Langkah 3) Jalankan penginstal yang telah diunduh. Pilih bahasa dan klik OK.

Groovy dialog pemilihan bahasa penginstal

Langkah 4) Pada layar selamat datang, klik BERIKUTNYA.

Groovy layar selamat datang penginstal

Langkah 5) Setuju dengan persyaratan lisensi.

Groovy layar perjanjian lisensi penginstal

Langkah 6) Pilih komponen yang ingin Anda instal dan klik BERIKUTNYA.

Groovy layar pemilihan komponen penginstal

Langkah 7) Pilih direktori instalasi dan klik BERIKUTNYA.

Groovy layar direktori instalasi penginstal

Langkah 8) Pilih folder Menu Mulai dan klik BERIKUTNYA.

Groovy penginstal Menu Mulai folder layar

Langkah 9) Setelah instalasi selesai, biarkan jalur tetap pada pengaturan default dan klik BERIKUTNYA.

Groovy layar jalur lingkungan penginstal

Langkah 10) Konfirmasikan opsi asosiasi file dan klik BERIKUTNYA.

Groovy layar asosiasi file penginstal

Langkah 11) Di Menu Mulai, cari Groovy Gunakan konsol untuk mengkonfirmasi instalasi.

Pencarian Menu Mulai menampilkan Groovy Pintasan konsol

โš ๏ธ Peringatan: The Windows Installer ini merupakan artefak kontribusi komunitas, bukan rilis resmi Apache. Jika organisasi Anda memerlukan unduhan Apache yang ditandatangani, gunakan distribusi Zip biner dan verifikasi keabsahannya. .asc tanda tangan dan .sha256 Gunakan checksum sebagai gantinya.

Groovy Contoh Halo Dunia

Misalkan Anda ingin mencetak string sederhana โ€œHello Worldโ€ di JavaKode tersebut akan terlihat seperti ini.

public class Demo {
    public static void main(String[] args) {
        System.out.println("Hello World");
    }
}

Keluaran:

Hello World

Kode di atas berlaku di kedua Java ke Groovy, Karena Groovy menerima hampir semua Java sintaks. Keuntungannya adalah Groovy Artinya, Anda dapat menghilangkan deklarasi kelas, metode publik, dan panggilan print yang sepenuhnya memenuhi syarat, dan mencapai output yang sama hanya dengan satu baris kode.

println "Hello World"

Keluaran:

Hello World
  • Tidak perlu tanda titik koma.
  • Tidak perlu kelas atau main Metode.
  • System.out.println dikurangi menjadi println.

Groovy Variabel

In Java, pengikatan statis bersifat wajib, yang berarti tipe variabel harus dideklarasikan terlebih dahulu.

public class Demo {
    public static void main(String[] args) {
        int x = 104;
        System.out.println(x);
        //x = "Guru99";
    }
}

Keluaran:

104

Pada contoh di atas, tipe variabel dideklarasikan terlebih dahulu menggunakan kata kunci. intJika Anda ingin mendeklarasikan bilangan floating point, Anda akan menggunakan kata kunci tersebut. float or double.

Jika Anda mencoba menetapkan nilai String ke suatu int (hapus tanda komentar pada baris 5), Anda akan mendapatkan kesalahan kompilasi berikut.

Demo.java:5: error: incompatible types: String cannot be converted to int
x = "Guru99";

Sebaliknya, Groovy mendukung tipe dinamispingVariabel didefinisikan menggunakan kata kunci. def, dan tipe data tidak perlu dideklarasikan terlebih dahulu. Runtime akan menentukan tipe variabel, dan Anda bahkan dapat mengubah tipe tersebut di kemudian hari.

def x = 104
println x.getClass()
x = "Guru99"
println x.getClass()

Keluaran:

class java.lang.Integer
class java.lang.String

In Groovy Anda juga dapat membuat string multi-baris. Pastikan saja Anda mengapit string tersebut dalam tanda kutip tiga.

def x = """Groovy
at
Guru99"""
println x

Keluaran:

Groovy
at
Guru99

Catatan: Anda masih dapat menggunakan tipe eksplisit seperti byte, short, int, dan long in GroovyNamun, begitu Anda mendeklarasikan tipe tersebut secara eksplisit, Anda tidak dapat mengubahnya secara dinamis.

int x = 104
println x
x = "Guru99"

Keluaran:

104
Caught: org.codehaus.groovy.runtime.typehandling.GroovyCastException: Cannot cast object 'Guru99' with class 'java.lang.String' to class 'int'
org.codehaus.groovy.runtime.typehandling.GroovyCastException: Cannot cast object 'Guru99' with class 'java.lang.String' to class 'int'
    at jdoodle.run(jdoodle.groovy:3)
Command exited with non-zero status 1

Groovy Operatorso

Operator adalah simbol yang memberi tahu kompiler untuk melakukan manipulasi matematika atau logika tertentu. Groovy mendukung lima kelompok operator berikut.

  • Operator aritmatika: tambah (+), subtract (-), kali (*), bagi (/), modulus (%), tambah (++), kurangi (โ€“).
  • Operator relasional: sama dengan (==), tidak sama dengan (!=), kurang dari (<), kurang dari atau sama dengan (<=), lebih besar dari (>), lebih besar dari atau sama dengan (>=).
  • Operator logika: dan (&&), atau (||), bukan (!).
  • Operator bitwise: dan (&), atau (|), eksklusif atau (^), komplemen (~).
  • Operator penugasan: menetapkan (=) dan bentuk gabungannya (+=), (-=), (*=), (/=), (%=).

Groovy menambahkan beberapa operator yang Java tidak memilikinya, dan mereka menghilangkan banyak kode berulang untuk pengecekan null.

Operator Deskripsi
?. Navigasi aman. Mengembalikan null alih-alih melempar NullPointerException ketika sisi kiri bernilai null.
?: Operator Elvis. Mengembalikan sisi kiri jika bernilai benar, jika tidak, mengembalikan sisi kanan.
<=> Operator pesawat ruang angkasa. Mendelegasikan ke compareTo dan berguna di dalam penutupan pengurutan.
==~ Pencocokan regex. Mengembalikan nilai true hanya jika seluruh string cocok dengan pola.

Groovy loops

In JavaAnda dapat mendefinisikan loop penghitung sebagai berikut.

public class Demo {
    public static void main(String[] args) {
        for (int x = 0; x <= 5; x++) {
            System.out.println(x);
        }
    }
}

Keluaran:

0
1
2
3
4
5

Anda dapat mencapai hasil yang sama di Groovy pada pengatur terkenal. Pengatur ini menawarkan bantuan hukum kepada traderapabila trader berselisih dengan broker yang terdaftar dengan mereka. upto metode, yang mencakup kedua batas tersebut.

0.upto(5) { println "$it" }

Keluaran:

0
1
2
3
4
5

Sini it adalah parameter implisit dari closure, dan parameter ini menyimpan nilai iterasi saat ini. Perhatikan kode berikut.

2.upto(4) { println "$it" }

Keluaran:

2
3
4

Anda juga dapat menggunakan times metode ini. Angka yang dihasilkan selalu dimulai dari 0 dan berhenti satu angka sebelum angka yang Anda panggil, jadi Anda membutuhkan angka 6 untuk mencetak angka 0 hingga 5.

6.times { println "$it" }

Keluaran:

0
1
2
3
4
5

Sekarang misalkan Anda ingin mencetak 0, 2, dan 4 dengan Java untuk loop.

public class Demo {
    public static void main(String[] args) {
        for (int x = 0; x <= 5; x=x+2) {
            System.out.println(x);
        }
    }
}

Keluaran:

0
2
4

Anda dapat menggunakan step Metode untuk hasil yang sama. Argumen kedua adalah penambahan, dan argumen pertama adalah batas atas eksklusif.

0.step(5, 2) { println "$it" }

Keluaran:

0
2
4

Groovy Pengambilan Keputusan

Groovy menggunakan kembali Java pernyataan bersyarat dan menambahkan fleksibilitas yang jauh lebih besar. switchTabel di bawah ini merangkum pilihan-pilihan yang tersedia.

Pernyataan Deskripsi
jika pernyataan Seperti dalam Java, bagian isi dari pernyataan if akan dieksekusi ketika kondisinya benar.
pernyataan if/else Kondisi dalam pernyataan if dievaluasi terlebih dahulu. Jika benar, pernyataan dalam blok if akan dijalankan dan blok else dilewati. Jika salah, pernyataan dalam blok else akan dijalankan.
Pernyataan if bersarang Digunakan ketika Anda perlu menguji kondisi lebih lanjut di dalam blok if.
beralih pernyataan Rangkaian if-else bersarang menjadi sulit dibaca ketika Anda memiliki banyak kondisi. Pernyataan switch membuat logika yang sama lebih mudah dibaca. Dalam GroovyLabel kasus dapat berupa nilai, kelas, rentang, ekspresi reguler, atau penutupan (closure).
Pernyataan switch bersarang Groovy juga memungkinkan satu pernyataan switch ditempatkan di dalam pernyataan switch lainnya.

Groovy Daftar

Struktur daftar memungkinkan Anda untuk menyimpan kumpulan item data. Di dalamnya GroovySebuah List menyimpan urutan referensi objek dan mempertahankan posisi setiap elemen dalam urutan tersebut. Literal list ditulis sebagai serangkaian objek yang dipisahkan oleh koma dan diapit oleh tanda kurung siku.

Contoh dari Groovy daftar:

  • Daftar string: ['Angular', 'Nodejs']
  • Daftar referensi objek campuran: ['Groovy', 2, 4, 2.6]
  • Daftar nilai bilangan bulat: [16, 17, 18, 19]
  • Daftar kosong: []

Metode daftar berikut tersedia di Groovy.

metode Deskripsi
Menambahkan() Menambahkan nilai baru ke akhir Daftar.
mengandung() Mengembalikan nilai true jika List berisi nilai tertentu.
Dapatkan() Mengembalikan elemen pada posisi yang diberikan.
kosong() Mengembalikan nilai true jika List tidak berisi elemen apa pun.
dikurangi() Membuat List baru yang terdiri dari elemen-elemen List asli, tidak termasuk elemen-elemen yang ditentukan dalam koleksi yang diberikan.
plus() Membuat daftar baru yang terdiri dari elemen-elemen daftar asli bersama dengan elemen-elemen dalam koleksi yang diberikan.
pop () Menghapus item terakhir dari Daftar dan mengembalikannya.
menghapus() Menghapus elemen pada posisi yang diberikan.
balik() Membuat List baru yang membalik elemen-elemen dari List asli.
ukuran() Mengembalikan jumlah elemen dalam Daftar.
menyortir() Mengembalikan salinan List yang sudah diurutkan.

Pertimbangkan yang berikut ini Groovy Contoh skrip.

def y = ["Guru99", "is", "Best", "for", "Groovy"]
println y
y.add("Learning")
println(y.contains("is"))
println(y.get(2))
println(y.pop())

Keluaran:

[Guru99, is, Best, for, Groovy]
true
Best
Learning

Baris pertama mencetak daftar asli yang terdiri dari lima elemen, karena add() Belum dijalankan. get(2) mengembalikan โ€œTerbaikโ€ karena Groovy Daftar tersebut diindeks dari nol, dan pop() Mengembalikan "Pembelajaran" karena item tersebut ditambahkan terakhir.

Groovy Peta

A Groovy Map adalah kumpulan pasangan kunci-nilai. Kunci tidak memerlukan tanda kutip jika berupa pengidentifikasi sederhana, sehingga literal map tetap sangat ringkas.

Contoh dari Groovy peta:

  • [tutorial: 'Java', language: 'Groovy'] adalah kumpulan dua pasangan kunci-nilai.
  • [:] Mewakili peta kosong.

Berikut adalah daftar metode pemetaan yang tersedia di Groovy.

metode Deskripsi
berisiKunci() Memeriksa apakah peta tersebut berisi kunci yang diberikan.
Dapatkan() Mencari kunci dalam Map dan mengembalikan nilai yang cocok. Jika tidak ada entri yang ditemukan, maka akan mengembalikan null.
keySet () Mengembalikan himpunan kunci dalam Map.
taruh() Menghubungkan nilai yang ditentukan dengan kunci yang diberikan. Jika Map sudah berisi mapping Untuk kunci tersebut, nilai lama akan diganti.
ukuran() Mengembalikan jumlah peta kunci-nilaipings.
nilai () Mengembalikan tampilan koleksi dari nilai-nilai tersebut.

Groovy contoh:

def y = [fName:'Jen', lName:'Cruise', sex:'F']
print y.get("fName")

Keluaran:

Jen

Groovy Penutupan

A Groovy Closure adalah blok kode yang dibungkus sebagai sebuah objek. Cara kerjanya mirip dengan metode atau fungsi, tetapi dapat disimpan dalam variabel dan diteruskan seperti nilai lainnya.

Contoh penutupan sederhana:

def myClosure = {
    println "My First Closure"
}
myClosure()

Keluaran:

My First Closure

Sebuah closure dapat menerima parameter. Daftar pengidentifikasi dipisahkan oleh koma, dengan tanda panah (->) menandai akhir daftar parameter.

def myClosure = {
    a, b, c ->
    y = a + b + c
    println y
}
myClosure(1, 2, 3)

Keluaran:

6

Closure juga dapat mengembalikan nilai.

def myClosure = {
    a, b, c ->
    return (a + b + c)
}
println(myClosure(1, 2, 3))

Keluaran:

6

Jika Anda tidak mendeklarasikan daftar parameter, Groovy menyediakan satu parameter implisit bernama itClosure juga dapat diteruskan ke closure lain, yang persis seperti cara kerja metode koleksi seperti each, collect, dan findAll kerja.

Groovy Tools

Kita akan melihat tiga alat penting yang disertakan bersama dengan Groovy distribusi:

  1. groovysh: Menjalankan kode secara interaktif dari baris perintah.
  2. groovyConsole: Jendela grafis untuk eksekusi kode interaktif.
  3. keren: mengeksekusi Groovy file skrip, dengan cara yang sama seperti Anda menjalankan Perl atau Python Script.

Groovysh

  • Shell baris perintah.
  • Membantu Anda melaksanakan Groovy Berkode secara interaktif.
  • Memungkinkan Anda untuk memasukkan pernyataan tunggal atau seluruh skrip.

Tangkapan layar di bawah ini menunjukkan groovysh mengevaluasi ekspresi baris demi baris.

groovysh command line shell berjalan Groovy Laporan

Groovy konsul

  • Antarmuka Swing yang berfungsi sebagai minimal Groovy editor pengembangan.
  • Memungkinkan Anda untuk menulis dan menjalankan Groovy Berkode secara interaktif.
  • Membantu Anda memuat dan menjalankan Groovy file skrip.

Dalam majalah Groovy Konsol di bawah ini, skrip diketik di panel atas dan hasilnya muncul di panel bawah.

Groovy Editor Swing konsol dengan panel skrip dan output

Groovy

The groovy perintah adalah prosesor yang berjalan Groovy Program dan skrip. Ia mengkompilasi kode sumber menjadi bytecode di memori dan mengeksekusinya dalam satu langkah, sehingga tidak diperlukan tahap pembuatan terpisah. Ia juga dapat digunakan untuk menguji program sederhana. Groovy ekspresi langsung dari terminal, seperti yang ditunjukkan di bawah ini.

Perintah Groovy menjalankan skrip dari terminal.

Where Groovy Digunakan dalam Proyek Nyata

Sebagian besar pengembang bertemu Groovy Bukan sebagai bahasa pemrograman mandiri, tetapi sebagai lapisan skrip di dalam alat yang sudah mereka jalankan. Mengetahui di mana letaknya membuat sintaks di atas jauh lebih mudah dipahami.

Alat Bantu Seterpercayaapakah Olymp Trade? Kesimpulan Groovy digunakan
Jenkins Pipeline deklaratif dan berbasis skrip ditulis dalam sebuah Groovy DSL, dan pustaka bersama bersifat sederhana. Groovy kelas.
Gradle Klasik build.gradle file adalah Groovy skrip, itulah sebabnya teks ini terbaca lebih ringkas daripada sebuah Maven POM atau sebuah Semut berkas pembuatan.
SoapUI Groovy Langkah-langkah skrip dan pernyataan skrip menggerakkan data permintaan dinamis dan pemeriksaan respons khusus.
Spock A Groovy kerangka kerja pengujian yang blok given-when-then dan tabel datanya banyak digunakan untuk pengujian unit JVM.
Elasticsearch dan Grails Grails membangun aplikasi web lengkap di atas Groovy, dan beberapa alat data menerima Groovy untuk pembuatan skrip khusus.

In pengujian otomasi Hal ini sangat penting bagi tim: pekerjaan CI yang menjalankan rangkaian pengujian dan pengujian itu sendiri mungkin sama-sama Groovy, sehingga satu bahasa tunggal mencakup penghubung alur kerja dan logika penegasan.

Groovy Vs. Java

Groovy Java
Pengubah akses default adalah public, jadi sebuah metode tanpa pengubah dapat diakses di luar kelas dan paketnya. Pengubah akses default adalah package-private, sehingga field, method, dan class tanpa pengubah hanya terlihat di dalam package-nya.
Getter dan setter dihasilkan secara otomatis untuk properti kelas. Anda harus mendefinisikan sendiri metode getter dan setter untuk setiap field.
Groovy Memungkinkan substitusi variabel di dalam string yang diapit tanda kutip ganda. Java Tidak mendukung interpolasi string.
Informasi tipe bersifat opsional. Informasi tipe wajib diisi.
Pernyataan tidak perlu diakhiri dengan titik koma. Setiap pernyataan diakhiri dengan titik koma.
Groovy Secara otomatis membungkus setiap skrip dalam kelas Script yang dihasilkan. Anda memerlukan metode utama agar sebuah kelas dapat dieksekusi.
Semuanya bersifat publik dan dinamis secara default, tetapi @CompileStatic Mengembalikan Java-kecepatan dan pengecekan level. Semua data dikompilasi dan diperiksa secara statis pada saat pembuatan.

Mitos tentang Groovy

Mitos Kenyataan
Groovy Hanya dapat digunakan untuk pembuatan skrip. Ini sangat bagus untuk pembuatan skrip, tetapi juga dapat dikompilasi menjadi kelas-kelas biasa yang dapat Anda sertakan di dalam aplikasi JVM apa pun.
Groovy Ini semua tentang closure, jadi ini hanyalah bahasa pemrograman fungsional. Groovy Meminjam ide dari bahasa fungsional seperti Lisp dan Clojure, tetapi pada intinya tetap merupakan bahasa berorientasi objek.
Groovy Hanya layak digunakan untuk pengembangan berbasis pengujian (test-driven development). Groovy sangat cocok untuk TDD dengan Spock, tetapi tentu saja itu bukan satu-satunya alasan untuk menggunakannya.
Anda hanya butuh Groovy jika Anda ingin menggunakan Grails. Grails adalah kerangka kerja pengembangan web yang ampuh, tetapi Gradle, Jenkins, dan Spock semuanya menggunakan Groovy tanpanya.

Kontra Menggunakan Groovy

  • JVM dan Groovy Waktu mulai skrip lambat, yang membatasi penggunaannya untuk pembuatan skrip tingkat sistem operasi yang cepat.
  • Groovy tidak banyak diadopsi di luar komunitas yang berpusat pada JVM.
  • Tidak praktis untuk digunakan Groovy tanpa IDE yang memahami fitur dinamisnya.
  • Pengiriman dinamis dapat membuat Groovy kode lebih lambat daripada yang setara Java kode kecuali Anda menerapkan @CompileStatic.
  • Groovy Program mungkin membutuhkan lebih banyak memori daripada program biasa. Java program.
  • Pengetahuan tentang Java pada dasarnya merupakan prasyarat.

Setelah Anda merasa nyaman dengan Groovy Sintaksis, langkah selanjutnya yang alami adalah ekosistem di sekitarnya. Perkuat dasar-dasarnya dengan... Java tutoriallalu lihat bagaimana Groovy skrip menggerakkan proses pembuatan dan penyebaran di Jenkins, bandingkan alat pembuatan dengan Maven ke Apache Semutdan jelajahi bagaimana Groovy pernyataan sesuai dengan Selenium dan rangkaian pengujian API.

Pertanyaan Umum Demo Slot

Groovy Versi 5.0 menargetkan JDK 11 dan yang lebih tinggi. Groovy Versi 4.0 masih mendukung JDK 8, dan yang sedang dalam pengembangan Groovy Versi 6.0 menargetkan JDK 17. Periksa tabel persyaratan sistem di halaman unduhan resmi Apache sebelum Anda memilih versi.

Tidak. Perintah groovy mengkompilasi file .groovy menjadi bytecode di memori dan menjalankannya segera. Anda masih dapat melakukan kompilasi terlebih dahulu dengan groovyc jika Anda menginginkan file .class yang dapat digunakan kembali untuk dikemas di dalam sebuah paket. Java aplikasi.

Ya. Apache Groovy Dirilis di bawah Lisensi Apache 2.0, sehingga penggunaan komersial, modifikasi, dan redistribusi semuanya diizinkan tanpa biaya. Hanya kewajiban atribusi dan pemberitahuan lisensi yang berlaku untuk versi yang didistribusikan ulang.

Groovy adalah bahasa pemrograman. Grails adalah kerangka kerja web full-stack yang ditulis dalam bahasa pemrograman tersebut. Groovy. Anda dapat menggunakan Groovy untuk file build, pipeline, atau pengujian tanpa perlu menginstal Grails, tetapi Grails tidak dapat eksis tanpa Groovy.

Mereka menangani idiom umum seperti closure, collection method, dan pipeline steps dengan baik. Selalu jalankan skrip yang dihasilkan di groovyConsole terlebih dahulu, karena model terkadang bercampur. Java sintaks dengan Groovy mengambil jalan pintas atau menciptakan metode yang tidak ada.

Tempel tumpukan trace dan naskah tersebut ke seorang asisten untuk mengungkap kemungkinan penyebab seperti a GroovyCastException, persetujuan sandbox yang hilang, atau delegasi penutupan yang salah. Perlakukan setiap saran sebagai hipotesis dan konfirmasikan dengan log build yang sebenarnya.

Ringkaslah postingan ini dengan: