Rumah >Java >javaTutorial >Lombok Unleashed: Meningkatkan Kecekapan Java dengan Getters, Setters, Constructors, Builders dan Banyak Lagi
Project Lombok ialah perpustakaan Java popular yang bertujuan untuk mengurangkan kod boilerplate dan meningkatkan produktiviti pengekod dengan menjimatkan banyak masa dan tenaga mereka dengan menyediakan anotasi untuk menjana kod Java biasa secara automatik semasa masa penyusunan
Projek Lombok menangani verbositi Java dengan menawarkan anotasi yang menghapuskan keperluan untuk menulis binaan kod berulang secara manual seperti kaedah getter, setter, constructor, equals, hashCode dan toString. Dengan menganotasi medan atau kelas dengan anotasi Lombok, pengekod boleh mengarahkan pengkompil untuk menjana kaedah ini secara automatik, mengurangkan jumlah kod boilerplate dan menjadikan kelas Java lebih padat dan boleh dibaca.
Menggunakan Project Lombok di Jawa menawarkan beberapa faedah menarik yang menyumbang kepada peningkatan produktiviti, kualiti kod dan kebolehselenggaraan.
Berikut ialah beberapa sebab untuk memilih Project Lombok.
Ia mengurangkan "Kod Boilerplate".
Ia juga meningkatkan kebolehgunaan semula dan kebolehbacaan kod.
Ia sangat mudah untuk dilaksanakan dan tidak mempunyai sebarang kerumitan.
Bersepadu dengan mudah dengan "IDE".
Kebanyakan projek kami adalah berdasarkan Maven. Jadi, kami hanya perlu menambah kebergantungan "Projek Lombok" pada fail "Pom.xml" kami yang terdapat dalam projek kami.
Pergi ke repositori maven dan salin repositori Lombok Maven dari sana, tambahkan kebergantungan lombok terkini dalam "Pom.xml" anda dan simpannya, kemudian muat semula projek.
Di Jawa, setakat ini amalan yang paling biasa ialah menambah pengambil dan penetap menggunakan corak "Kacang Jawa". Kebanyakan IDE menjana kod secara automatik untuk corak ini.
Mari kita lihat kod memahami pendekatan ini dengan mencipta pengambil dan penetap dengan bantuan “Objek Data” dan “Kilang Data” :
Objek Data tanpa Lombok
Walaupun pendekatan JavaBeans tradisional untuk mencipta kaedah getter dan setter secara manual menyelesaikan tugas, tetapi ia mempunyai beberapa kelemahan dan batasan yang menjadikannya kurang diingini, terutamanya dalam persekitaran pembangunan Java moden semua, kelemahannya banyak diliputi di Lombok.
Jadi, daripada ini, kami lebih suka menggunakan corak Lombok. Berikut ialah cara ia boleh dilaksanakan dalam Java :
Pembina tanpa Lombok kita perlu menentukan secara manual setiap pembina, yang boleh membosankan dan terdedah kepada ralat, terutamanya untuk kelas dengan banyak medan. Selain itu, kita perlu mengendalikan pelbagai konfigurasi pembina, yang boleh meningkatkan kerumitan kod.
Lombok memudahkan proses ini dengan anotasi @NoArgsConstructor, @AllArgsConstructor dan @RequiredArgsConstructor.
Pembina tanpa Lombok
Menggunakan anotasi Lombok mengurangkan jumlah kod boilerplate yang perlu ditulis secara manual. Dengan Lombok, anda hanya menganotasi kelas dan medan, dan pembina dijana secara automatik berdasarkan kriteria yang ditentukan. Ini membawa kepada kod yang lebih bersih dan ringkas.
Tanpa menggunakan ciri Anotasi ToString
2. Penjanaan EqualAndHashCode
Tanpa menggunakan ciri Anotasi EqualAndHashCode
3. Anotasi Data
Tanpa menggunakan anotasi @data, kami perlu melaksanakan getter, setter dan ciri Pembina secara manual ke dalam kod kami.
Tanpa menggunakan ciri Anotasi Data
Anotasi @data ialah pintasan mudah yang menggabungkan @Getter, @setter, @NoArgsConstructor, @AllArgsConstructor, @RequiredArgsConstructor, @ToString, @EqualsAndHashCode dan banyak lagi anotasi.
Menggunakan @data, Lombok menjana kaedah ini secara automatik untuk kami berdasarkan medan yang diisytiharkan dalam kelas. Ini dengan ketara mengurangkan jumlah kod boilerplate yang kami perlukan untuk menulis dan menyelenggara, menjadikan kod kami lebih ringkas dan boleh dibaca.
pakej org.example.dataobjects;
import lombok.*;
@Getter
@setter
@NoArgsConstructor
@AllArgsConstructor
@RequiredArgsConstructor
@ToString(exclude = {"designation"})
@EqualsAndHashCode
@pembina
@data
Profil kelas awam {
String peribadi FirstName;
Nama akhir String peribadi;
penetapan Rentetan peribadi;
umur int peribadi;
utama kekosongan statik awam(String[] args) {
// Mencipta tika Profil menggunakan pembina
Profil profil = Profile.builder()
.firstName("Bahagian")
.Nama Akhir("Kathrotiya")
.designation("Jurutera Automasi QA")
.umur(23)
.build();
}
}
Delombok
Walaupun siaran ini menyerlahkan ciri yang saya dapati paling berfaedah, Lombok menawarkan pelbagai fungsi dan penyesuaian tambahan.
Dokumentasi Lombok merupakan sumber yang tidak ternilai, memberikan penjelasan dan contoh yang mendalam untuk setiap anotasi. Jika anda tertarik dengan siaran ini, saya menggesa anda untuk mendalami dokumentasi Lombok untuk mendedahkan lebih banyak kemungkinan.
Lebih-lebih lagi, tapak projek ini menawarkan panduan komprehensif untuk menyepadukan Lombok merentasi pelbagai persekitaran pengaturcaraan. Sama ada anda menggunakan Eclipse, NetBeans, IntelliJ atau lain-lain, yakinlah bahawa Lombok menyepadukan dengan lancar dengan aliran kerja anda. Sebagai seseorang yang kerap bertukar antara IDE, saya boleh membuktikan kepelbagaian dan kebolehpercayaan Lombok merentas semua platform.
Secara keseluruhan, Project Lombok menawarkan set ciri yang komprehensif yang menyelaraskan pembangunan Java, mengurangkan verbositi kod dan mempromosikan amalan terbaik.
Project Lombok menawarkan set ciri komprehensif yang menyelaraskan ujian Java, mengurangkan verbositi kod dan mempromosikan amalan terbaik. Dengan menggabungkan pembina Lombok dan pembina Lombok, penguji boleh memudahkan lagi kod mereka dan meningkatkan kebolehselenggaraan.
Atas ialah kandungan terperinci Lombok Unleashed: Meningkatkan Kecekapan Java dengan Getters, Setters, Constructors, Builders dan Banyak Lagi. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!