Lombok Kütüphanesi: Boilerplate Kodlardan (Getter/Setter) Kurtulun

crazy_coder

Moderatör
Katılım
20 Şub 2026
Mesajlar
204
Tepkime puanı
0
Puanları
16
Lombok: Java'da Kod Temizliği Devrimi



1. Lombok Olmadan vs. Lombok İle​


Sadece iki alanı olan basit bir "Kullanıcı" sınıfını düşünelim:

Geleneksel Java (50+ Satır)Lombok İle (5 Satır)
Değişken tanımları, 4 tane Getter/Setter, hashCode(), equals(), toString() ve Constructor...Sadece değişkenler ve üzerine eklenen birkaç küçük notasyon (@).

2. En Sık Kullanılan Lombok Notasyonları​


Lombok, sınıfın üzerine eklediğiniz basit etiketlerle arka planda dev işler yapar:

@Getter / @Setter: Alanlar için ilgili metotları oluşturur.

@ToString: Nesneyi yazdırdığınızda anlamlı bir çıktı veren toString() metodunu yazar.

@NoArgsConstructor: Parametresiz (boş) bir constructor oluşturur.

@AllArgsConstructor: Tüm alanları içeren bir constructor oluşturur.

@Data: En popüleridir! @Getter, @Setter, @ToString, @EqualsAndHashCode ve @RequiredArgsConstructor notasyonlarının hepsini tek başına kapsar.

@Builder: Karmaşık nesneleri daha okunabilir bir şekilde ("Design Pattern" kullanarak) oluşturmanızı sağlar.

Java:
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class Urun {
private Long id;
private String isim;
private Double fiyat;
}

3. @Builder Notasyonu Neden Harikadır?​


Çok fazla alanı olan bir nesneyi oluştururken parametre sırasını karıştırmak çok kolaydır. @Builder ile kodu bir cümle gibi yazabilirsiniz:

Java:
Urun telefon = Urun.builder()
.isim("iPhone 15")
.fiyat(50000.0)
.build();

4. Lombok Nasıl Çalışır? (Arka Plan)​


Lombok, çalışma zamanında (runtime) bir yük getirmez. Siz kodu derlediğiniz anda Lombok devreye girer, notasyonları görür ve ilgili Java kodlarını .class dosyasının içine enjekte eder. Bu yüzden uygulamanız sanki o metotları siz yazmışsınız gibi performanslı çalışır.

5. Kurulum Notları​


Lombok kullanmak için iki küçük adım gerekir:

Bağımlılık: Maven projenize lombok dependency ekleyin.

IDE Eklentisi: IntelliJ veya Eclipse kullanıyorsanız "Lombok Plugin" yüklü olmalıdır. Aksi halde IDE, yazmadığınız getName() gibi metotları bulamadığı için hata gösterir.



Sonuç

Lombok, modern Java projelerinin olmazsa olmazıdır. Kodunuzu sadeleştirir, hata yapma ihtimalini azaltır ve dosya boyutunu (görsel olarak) küçültür. "Kod yazarken parmaklarım yorulmasın, zihnim yorulsun" diyen her geliştiricinin en iyi dostudur.
 
Geri
Üst