SPRING FRAMEWORK: THE FUNDAMENTALS OF DEPENDENCY INJECTION EĞİTİMİ

Bağımlılık enjeksiyonunu ilkeleriyle kavrayın

Dependency Injection ilkeleri, IoC kapsayıcısı, bean tanımları, scope, yaşam döngüsü ve test edilebilir tasarım örneklerle işlenir

Dependency injection temellerini Spring ile işleyen eğitim; IoC ilkeleri, yapılandırma biçimleri, enjeksiyon türleri, scope, yaşam döngüsü ve mock'larla birim test konularını kapsar.

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

Eğitim Hakkında

Spring ile DI ilkeleri ve gevşek bağlılık

Eğitim, dependency injection kavramını Spring üzerinden temellendirir. Sıkı bağlı koddan gevşek bağlı tasarıma geçiş, Dependency Inversion ilkesi, ApplicationContext ile bean oluşturma, XML, Java ve anotasyon tabanlı yapılandırma, constructor ve setter injection, scope ve yaşam döngüsü, sahte nesnelerle birim test yazımı konuları adım adım uygulamalı gösterilir.

Süre ve Format

2 Gün. Her gün dört modül; 1. gün DI İlkeleri ve Yapılandırma Biçimleri; 2. gün Yaşam Döngüsü, Scope ve Test.

Seviye

Temel Seviye — Bağımlılık enjeksiyonu ilkeleri, IoC kapsayıcısı ve gevşek bağlı tasarım

Öğrenme Metodu

Katılımcılar sıkı bağlı bir örnek uygulamayı adım adım Spring DI ile yeniden tasarlar ve her adımda testlerini yazar.

Neden Bu Eğitim?

🧭İlke Odaklı

SOLID içindeki Dependency Inversion ilkesini kod üzerinde görür ve uygularsınız.

🔌Değiştirilebilir Parçalar

Arayüz ve enjeksiyonla uygulamanın parçalarını kolayca değiştirilebilir kılarsınız.

✅Test Edilebilirlik

Bağımlılıkları taklit ederek hızlı ve yalıtılmış birim testler yazarsınız.

Anahtar Konular

dependency injectionspring diioc containerapplicationcontextconstructor injectionsetter injectionspring bean scopespring xml yapılandırmajava configmockito spring
“Gevşek bağlı kod, değişime hazır koddur.”

Ön Koşullar

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

1
Java OOP

Arayüz, kalıtım ve çok biçimlilik kavramları bilinmelidir.

2
Temel araçlar

Maven ve bir IDE kullanabilmek yeterlidir.

3
Birim test merakı

JUnit ile test yazma deneyimi şart değil, faydalıdır.

4
Ortam

JDK 17 ve IntelliJ IDEA kurulu olmalıdır.

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 hedefiKatılımcı sıkı bağlı tasarımı DI ile gevşetir ve üç yapılandırma biçimini uygular.
Modül 1
Sıkı Bağlılık Sorunu
  • new ile bağımlılık oluşturmanın maliyeti
  • Dependency Inversion ve Open/Closed ilişkisi
  • Arayüz arkasına soyutlama
  • Factory ve Service Locator ile kıyaslama
  • Elle DI: yapıcıdan bağımlılık verme
  • IoC kapsayıcısının çözdüğü problem
Modül 2
Kapsayıcı Kullanımı
  • ApplicationContext oluşturma ve getBean
  • ClassPathXmlApplicationContext ve AnnotationConfigApplicationContext
  • Bean tanımı: id, class, constructor-arg
  • Bean adı, takma ad ve tip bazlı arama
  • Kapsayıcının kapatılması ve kaynak serbest bırakma
  • Logging ile bean oluşum sırasını izleme
Modül 3
Yapılandırma Biçimleri
  • XML tabanlı yapılandırma
  • @Configuration ve @Bean ile Java config
  • @Component ve @ComponentScan ile anotasyon
  • Üç yaklaşımın karşılaştırılması
  • Karma yapılandırma: @ImportResource
  • Hangi yaklaşımın ne zaman seçileceği
Modül 4
Enjeksiyon Türleri
  • Constructor injection ve zorunlu bağımlılık
  • Setter injection ve isteğe bağlı bağımlılık
  • Basit değer ve referans enjeksiyonu
  • Koleksiyon ve Map enjeksiyonu
  • İç bean ve bean referansı
  • Tercih önerileri ve gerekçeleri
Günün hedefiKatılımcı bean yaşam döngüsünü yönetir ve DI sayesinde yalıtılmış testler yazar.
Modül 1
Scope
  • Singleton scope ve durumsuz tasarım
  • Prototype scope ve her çağrıda yeni örnek
  • Web scope'larına kısa bakış
  • Singleton içinde prototype bağımlılığı sorunu
  • Thread safety ve paylaşılan durum
  • Scope seçim kriterleri
Modül 2
Yaşam Döngüsü
  • Bean oluşturma adımları ve sırası
  • @PostConstruct ve @PreDestroy
  • init-method ve destroy-method
  • BeanPostProcessor ile müdahale
  • Lazy ve eager başlatma
  • Kapsayıcı kapanırken kaynak temizliği
Modül 3
Özellik ve Profil
  • @PropertySource ve @Value
  • Environment ile özellik okuma
  • Profil bazlı bean: @Profile
  • Test için ayrı yapılandırma
  • Ortam değişkeniyle geçersiz kılma
  • Gizli bilgilerin kod dışında tutulması
Modül 4
DI ile Test
  • Elle sahte nesne (stub) yazma
  • Mockito ile mock ve verify
  • SpringExtension ve @ContextConfiguration
  • @TestConfiguration ile bean değiştirme
  • Birim ve entegrasyon testi ayrımı
  • Test hızını koruma yolları

Eğitim Kazanımları

Program sonunda katılımcılar:

✅
DI İlkesi

Dependency Inversion ilkesini kodda uygulayıp sıkı bağlılığı kaldırabilirsiniz.

✅
Kapsayıcı Kullanımı

ApplicationContext ile bean oluşturup yönetebilirsiniz.

✅
Üç Yapılandırma

XML, Java config ve anotasyon yaklaşımlarını karşılaştırıp seçebilirsiniz.

✅
Enjeksiyon Seçimi

Constructor ve setter injection arasında gerekçeli seçim yapabilirsiniz.

✅
Scope Yönetimi

Singleton ve prototype davranışını doğru kullanabilirsiniz.

✅
Yaşam Döngüsü

Başlatma ve yok etme callback'lerini yönetebilirsiniz.

✅
Profil Kullanımı

Ortama göre bean ve özellik seçimi yapabilirsiniz.

✅
Mock ile Test

Bağımlılıkları taklit ederek yalıtılmış birim testler yazabilirsiniz.

Kimler İçin Uygundur?

  • DI kavramını sağlam öğrenmek isteyen Java geliştiricileri
  • Spring'e yeni başlayan öğrenciler için uygundur

Sıkça Sorulan Sorular

Bu eğitim kimler için uygundur?
DI kavramını sağlam öğrenmek isteyen Java geliştiricileri ve Spring'e yeni başlayan öğrenciler için uygundur.
DI ile IoC aynı şey mi?
IoC genel ilkedir, DI bu ilkenin bir uygulama biçimidir. Fark birinci günde somut kodla gösterilir.
XML yapılandırma hâlâ gerekli mi?
Yeni projelerde nadiren; ancak eski kod tabanlarını okuyabilmek için kısaca işlenir.
Spring Boot bu eğitimde var mı?
Odak çekirdek DI olduğundan Boot son bölümde kısaca değinilir; kavramlar Boot'a doğrudan taşınır.
Sertifika veriliyor mu?
Digital Vizyon Akademi Katılım ve Başarı Sertifikası verilir.

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. Spring Framework: The Fundamentals of Dependency Injection E 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 JVMJava Developer Professional: Advanced Object-Oriented Concepts Eğitimi
Yazılım Geliştirme Eğitimleri

Java Developer Professional: Advanced Object-Oriented Concepts Eğitimi

2 günİleriOnline / Yüz Yüze / Hibrit

Java Professional: İleri Nesne Yönelimli Kavramlar eğitimi: Record, sealed class ve interface, enum gelişmiş kullanım, iç içe ve anonim sınıflar, arayüz...

Detayları Gör →
Java ve JVMJava Developer Professional: Concurrency and Virtual Threads Eğitimi
Yazılım Geliştirme Eğitimleri

Java Developer Professional: Concurrency and Virtual Threads Eğitimi

3 günİleriOnline / Yüz Yüze / Hibrit

Java Professional: Eşzamanlılık ve Sanal Thread'ler eğitimi: Thread yaşam döngüsü, synchronized, volatile, Lock, atomik sınıflar, concurrent koleksiyonlar,...

Detayları Gör →
Java ve JVMJava Developer Professional: Core Java Fundamentals and String Manipulation Eğitimi
Yazılım Geliştirme Eğitimleri

Java Developer Professional: Core Java Fundamentals and String Manipulation Eğitimi

2 günİleriOnline / Yüz Yüze / Hibrit

Java Professional: Temel Java ve String İşleme eğitimi: Primitive ve wrapper tipler, tip dönüşümü, operatörler, var, text block, String/StringBuilder API, regex

Detayları Gör →
Java ve JVMJava Developer Professional: Date and Time API Eğitimi
Yazılım Geliştirme Eğitimleri

Java Developer Professional: Date and Time API Eğitimi

2 günİleriOnline / Yüz Yüze / Hibrit

Java Professional: Date ve Time API eğitimi: LocalDate, LocalTime, LocalDateTime, Instant, ZonedDateTime, OffsetDateTime, Period, Duration, ChronoUnit,...

Detayları Gör →
Java ve JVMJava Developer Professional: Exception Handling Eğitimi
Yazılım Geliştirme Eğitimleri

Java Developer Professional: Exception Handling Eğitimi

2 günİleriOnline / Yüz Yüze / Hibrit

Java Professional: İstisna Yönetimi eğitimi: Throwable hiyerarşisi, checked ve unchecked, multi-catch, try-with-resources, suppressed, finally kuralları, istisn

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