JAVA SE : ENCAPSULATION EĞİTİMİ

Encapsulation ile sınıflarınızı koruyun

private alan, getter/setter, invariants, immutability, defensive copy, package-private ve JavaBeans.

Eğitim encapsulation'ın amacını, private alan ve public erişimci metotlarla sınıf değişmezlerinin (invariants) korunmasını, setter içinde doğrulamayı, JavaBeans kurallarını, salt okunur ve immutable sınıfları, savunmacı kopyayı (Date, List, dizi), erişim beli…

2 gün Temel Seviye Online / Yüz Yüze / Hibrit Sertifikalı

Eğitim Hakkında

Veri gizleme ve kontrollü erişim

Eğitim encapsulation'ın amacını, private alan ve public erişimci metotlarla sınıf değişmezlerinin (invariants) korunmasını, setter içinde doğrulamayı, JavaBeans kurallarını, salt okunur ve immutable sınıfları, savunmacı kopyayı (Date, List, dizi), erişim belirleyicilerinin rolünü, Tell-Don't-Ask ilkesini, anemic model eleştirisini ve record ile Lombok alternatiflerini örneklerle işler.

Süre ve Format

2 Gün. Her gün dört modül; Encapsulation Temelleri; İleri Encapsulation ekseninde ilerleyen uygulamalı program.

Seviye

Temel Seviye — Java encapsulation: private alanlar, getter/setter, doğrulama, immutability, erişim belirleyicileri ve savunmacı kopya

Öğrenme Metodu

Hatalı tasarlanmış açık alanlı bir banka hesabı sınıfı adım adım encapsulate edilir; ihlaller birim testlerle yakalanır.

Neden Bu Eğitim?

🔐Veri koruma

Nesnenin durumunu dışarıdan bozulmaya karşı korursunuz.

✔️Doğrulama

Her değişikliğin kural kontrolünden geçmesini sağlarsınız.

🧊Immutability

Değişmez sınıflarla hata sınıflarını ortadan kaldırırsınız.

Anahtar Konular

java encapsulationjava kapsüllemegetter setterimmutable classdefensive copyjavabeansjava oopjava se eğitimi
“Bir sınıfın gücü, neleri dışarıya açmadığıyla ölçülür.”

Ön Koşullar

Eğitimden verim almak için faydalı olacak bilgi ve ortam gereksinimleri

1
Sınıflar

Sınıf ve nesne yazımı.

2
Erişim

public ve private kavramı.

3
Koleksiyon

List kullanımı.

4
Ortam

JDK 17 ve IDE.

Eğitim İçeriği

Programın gün gün akışı aşağıdadır. Bir güne tıklayarak o günün modüllerini ve içeriklerini görebilirsiniz.

Günün hedefiTemel
Modül 1
Neden Encapsulation
  • Açık alanların sorunları
  • Değişmezlik (invariant) kavramı
  • Bakım ve değişim kolaylığı
  • Soyutlama ile farkı
  • Gerçek hayat örnekleri
  • Kötü tasarımlı kod incelemesi
Modül 2
Getter ve Setter
  • private alan ve public erişimci metot
  • JavaBeans adlandırma kuralları
  • Setter içinde doğrulama
  • Salt okunur özellik (getter only)
  • Hesaplanan özellik
  • IDE ile üretim ve sınırları
Modül 3
Erişim Belirleyicileri
  • private, package-private, protected, public
  • API yüzeyi ve minimum görünürlük
  • İç sınıf ile gizleme
  • Test için erişim sorunu
  • Java modülleri ile kapsülleme
  • Tasarım kontrol listesi
Modül 4
Doğrulama ve Hata
  • IllegalArgumentException kullanımı
  • Objects.requireNonNull
  • Constructor ile geçerli nesne oluşturma
  • Bean Validation kısa bakış
  • Hata mesajı tasarımı
  • Birim testler
Günün hedefiİleri
Modül 1
Immutable Sınıflar
  • Immutable sınıf kuralları
  • final sınıf ve final alanlar
  • Setter olmaması
  • with... metotları
  • String örneği
  • Record ile immutability
Modül 2
Savunmacı Kopya
  • Date ve dizi alanlarının sızması
  • Constructor'da kopya alma
  • Getter'dan kopya veya salt okunur görünüm
  • List.copyOf ve Collections.unmodifiableList
  • Kopya maliyeti
  • Test ile sızıntı gösterme
Modül 3
Tasarım Prensipleri
  • Tell, don't ask
  • Anemic domain model eleştirisi
  • Law of Demeter
  • Veri ve davranışı birlikte tutma
  • Value object kavramı
  • Lombok ve record karşılaştırması
Modül 4
Uygulama
  • Banka hesabı sınıfının yeniden tasarımı
  • Para (Money) değer nesnesi
  • Takvim etkinliği sınıfı
  • Test ve ihlal avı
  • Kod incelemesi
  • Özet ve sınav

Eğitim Kazanımları

Program sonunda katılımcılar:

✅
Veri gizleme

private alan ve erişimci metotlarla sınıf yazabilirsiniz.

🎯
Doğrulama

Setter ve constructor içinde kural doğrulaması yapabilirsiniz.

🧩
JavaBeans

JavaBeans adlandırma kurallarını uygulayabilirsiniz.

⚙️
Erişim seçimi

Minimum gerekli görünürlüğü seçebilirsiniz.

🔍
Immutability

Değişmez sınıflar tasarlayabilirsiniz.

🛠️
Savunmacı kopya

İç durumun dışarı sızmasını önleyebilirsiniz.

📈
Tasarım ilkesi

Tell-Don't-Ask ilkesini uygulayabilirsiniz.

🚀
Test

Encapsulation ihlallerini birim testle yakalayabilirsiniz.

Kimler İçin Uygundur?

  • Java OOP'ye yeni başlayan öğrenciler
  • sınıf tasarımını iyileştirmek isteyen yeni geliştiriciler için uygundur

Sıkça Sorulan Sorular

Bu eğitim kimler için uygundur?
Java OOP'ye yeni başlayan öğrenciler ve sınıf tasarımını iyileştirmek isteyen yeni geliştiriciler için uygundur.
Eğitime katılmak için hangi ön bilgiler gerekir?
Sınıflar: Sınıf ve nesne yazımı. Erişim: public ve private kavramı.
Eğitim nasıl ilerler ve kaç gün sürer?
Eğitim 2 gün sürer; her gün dört modülden oluşur ve her modülde anlatım ile uygulamalı çalışma birlikte yürür. Günler sırasıyla: Encapsulation Temelleri; İleri Encapsulation.
Eğitim sonunda sertifika verilir mi?
Evet, katılım ve başarı koşullarını sağlayan katılımcılara Digital Vizyon Akademi Katılım ve Başarı Sertifikası verilir.
Her alan için getter ve setter yazmak encapsulation mıdır?
Hayır; tüm alanları açan getter/setter, alanı public yapmaktan farklı değildir. Eğitimde davranış odaklı ve doğrulamalı tasarım öğretilir.

Sertifikalandırma

Bu eğitim Digital Vizyon Akademi Başarı Sertifikası ile tamamlanır.

Eğitim başında “Ön Test”, bitiminde “Son Test” uygulanarak gelişim ölçümlenir. Değerlendirme formunu dolduran katılımcılar sertifikalarını alır. Sertifikanızın geçerliliğini Sertifika Sorgulama sayfasından doğrulayabilirsiniz.

Örnek Sertifika d Digital Vizyon AKADEMİ KATILIM SERTİFİKASI Bu sertifika [Katılımcı Adı Soyadı] adlı katılımcının aşağıdaki eğitim programını başarıyla tamamladığını belgeler. Java SE : Encapsulation Eğitimi Sertifika Kodu DV-2026XX00 Tarih 27.10.2026 Yetkili İmza DV AKADEMİ

Eğitim Bilgileri

Süre2 gün
SeviyeTemel Seviye
FormatOnline / Yüz Yüze / Hibrit
Sertifika✓ Var
Hemen Bilgi Al
İlgili Eğitimler

Bu Eğitimle Birlikte Tercih Edilenler

Java ve JVMSpring: Extending Applications with Aspect-oriented Programming Eğitimi
Yazılım Geliştirme Eğitimleri

Spring: Extending Applications with Aspect-oriented Programming Eğitimi

2 günOrtaOnline / Yüz Yüze / Hibrit

Spring AOP ile uygulama genişletme eğitimi: aspect tasarımı, introduction, @Transactional ve @Cacheable iç yapısı, AspectJ weaving ve aspect testleri.

Detayları Gör →
Java ve JVMTemel Java Eğitimi
Yazılım Geliştirme Eğitimleri

Temel Java Eğitimi

3 günBaşlangıçOnline / Yüz Yüze / Hibrit

Temel Java eğitimi: sözdizimi, OOP, koleksiyonlar, istisna yönetimi, Stream API, dosya işlemleri, Maven ve JUnit ile sıfırdan uygulamalı Java öğrenimi.

Detayları Gör →
Java ve JVMTest Driven Development & Java & JUnit Eğitimi
Yazılım Geliştirme Eğitimleri

Test Driven Development & Java & JUnit Eğitimi

3 günOrtaOnline / Yüz Yüze / Hibrit

Java ile test güdümlü geliştirme eğitimi: Red-Green-Refactor, JUnit 5, Mockito, AssertJ, parametreli testler, JaCoCo ve mutation testing uygulamalı işlenir.

Detayları Gör →
Java ve JVMTest-Driven Development Workshop with Java Eğitimi
Yazılım Geliştirme Eğitimleri

Test-Driven Development Workshop with Java Eğitimi

2 günOrtaOnline / Yüz Yüze / Hibrit

Java ile uygulamalı TDD atölyesi: katalar, eşli programlama, outside-in TDD, Mockito, characterization test ve legacy koda güvenli değişiklik ekleme.

Detayları Gör →
Java ve JVMThe Scala Programming Language Eğitimi
Yazılım Geliştirme Eğitimleri

The Scala Programming Language Eğitimi

3 günOrtaOnline / Yüz Yüze / Hibrit

Scala programlama eğitimi: case class, pattern matching, trait, değişmez koleksiyonlar, Option ve Either, Future ve sbt ile fonksiyonel JVM geliştirme.

Detayları Gör →
+90 (501) 369 40 14 WhatsApp [email protected] LinkedIn