STRUCTURES OF OBJECT-ORIENTED PROGRAMMING EĞİTİMİ

OOP yapı taşlarını doğru seçmeyi öğrenin

Sınıf, struct, record, enum, interface, kalıtım, generics ve temiz kodla nesne yönelimli yapıları derinlemesine öğrenin.

Eğitim, nesne yönelimli dillerdeki yapı taşlarını tasarım gözüyle inceler. Sınıf, struct, record, enum, interface, abstract class, iç sınıf, lambda ve property gibi yapıların ne zaman seçileceğini, değer ve referans tipi semantiğini öğrenirsiniz.

3 gün Orta Seviye Online / Yüz Yüze / Hibrit Sertifikalı

Eğitim Hakkında

Üç günde OOP dil yapıları ve bunların tasarımdaki yeri

Eğitim, nesne yönelimli dillerdeki yapı taşlarını tasarım gözüyle inceler. Sınıf, struct, record, enum, interface, abstract class, iç sınıf, lambda ve property gibi yapıların ne zaman seçileceğini, değer ve referans tipi semantiğini öğrenirsiniz. Kalıtım, çok biçimlilik, generics, koleksiyon, istisna, UML sınıf/nesne diyagramı ve SOLID ile Factory, Decorator, Observer, Strategy gibi desenlerle yapıları tasarıma dönüştürürsünüz.

Süre ve Format

3 Gün. Her gün dört modül; sabah dil yapılarının anlatımı, öğleden sonra yapıları karşılaştıran kodlama laboratuvarı.

Seviye

Orta Seviye — OOP yapı taşları: sınıf, struct, record, interface, kalıtım, generics ve tasarım ilkeleri.

Öğrenme Metodu

Aynı problem farklı yapılarla (class, record, interface, bileşim) çözülüp sonuçlar bellek, esneklik ve okunabilirlik açısından karşılaştırılır.

Neden Bu Eğitim?

🏗️Yapı Seçimi

Hangi problemde class, struct, record veya interface kullanacağınızı bilirsiniz.

🔄Değer ve Referans

Kopyalama ve eşitlik davranışlarındaki hataları önlersiniz.

🎛️Esnek Tasarım

Kalıtım yerine bileşimi gerektiğinde seçersiniz.

Anahtar Konular

object oriented programming yapılarısınıf ve structrecordinterface ve abstract classkalıtım ve bileşimgenericsOOP tasarımC# OOPjava OOP
“Doğru yapı, yarım sayfa kodu tek satıra indirir.”

Ön Koşullar

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

1
Programlama Deneyimi

Bir OOP dilinde temel programlar yazmış olmak.

2
Java veya C#

Orta düzey dil bilgisi.

3
IDE

Debugger kullanabilen bir geliştirme ortamı.

4
Merak

Dil yapılarının neden öyle tasarlandığını sorgulama isteği.

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ınıf, record, enum, interface ve kalıtım yapılarının davranış farklarını kodlayarak karşılaştırır.
Modül 1
Nesne Yönelimli Programlama Temelleri
  • Sınıf, nesne ve referans kavramları
  • Alanlar, metotlar ve constructor zincirleme
  • Kapsülleme ve erişim belirleyicileri (private, protected, public)
  • static üyeler, this/self ve nesne yaşam döngüsü
  • Çöp toplayıcı (GC) ve bellek yönetimi sezgisi
  • İlk OOP mini projesi: kütüphane yönetimi
Modül 2
Nesne Yönelimli Dil Yapıları
  • class, struct, record ve enum farkları
  • Interface, abstract class ve mixin / trait mantığı
  • İç içe (nested), yerel ve anonim sınıflar
  • Lambda, fonksiyonel arayüzler ve delegate'ler
  • Property, indexer ve operatör aşırı yükleme
  • Değer tipi ile referans tipi semantiği ve kopyalama
Modül 3
Kalıtım ve Çok Biçimlilik
  • extends/: ile kalıtım, override ve super/base çağrısı
  • Dinamik bağlama (dynamic dispatch) ve çok biçimlilik
  • Abstract sınıf ile interface seçimi, default metotlar
  • Kalıtım yerine bileşim (composition over inheritance)
  • Protected üyelerin kırılgan temel sınıf (fragile base class) riski
  • Nesne karşılaştırma: equals/hashCode ve toString sözleşmeleri
Modül 4
Koleksiyonlar, Generics ve İstisnalar
  • Generic sınıf ve metotlar, sınırlı tipler (bounded types)
  • List, Set, Map implementasyonları ve karmaşıklıkları
  • Karşılaştırma: Comparable ve Comparator
  • Checked/unchecked istisnalar ve try-with-resources / using
  • Özel istisna sınıfı tasarımı ve fail-fast yaklaşımı
  • Değişmez (immutable) nesneler, record ve enum kullanımı
Günün hedefiKatılımcı uyum/bağlaşım ölçütleriyle yapıları değerlendirir, UML sınıf ve nesne diyagramlarına dökür ve SOLID uygular.
Modül 1
OOP Tasarım Temelleri
  • Yüksek uyum (cohesion) ve düşük bağlaşım (coupling)
  • Law of Demeter ve 'Tell, Don't Ask' ilkesi
  • Sözleşmeyle tasarım: ön koşul, son koşul, değişmez
  • Değişmezlik ve yan etkisiz metotlar
  • Küçük arayüz, açık niyet: adlandırma ve API tasarımı
  • Basit sınıf diyagramı ile tasarımı iletme
Modül 2
Sınıf Diyagramı
  • Sınıf, öznitelik, işlem ve görünürlük gösterimi
  • Association, aggregation, composition ve dependency farkları
  • Çokluk (multiplicity), rol adı ve yönlülük
  • Generalization, realization, abstract sınıf ve interface
  • Association class ve türetilmiş öznitelikler
  • Diyagramdan Java/C# koduna eşleme ve tersine mühendislik
Modül 3
Nesne, Paket ve Bileşen Diyagramları
  • Object diagram ile çalışma zamanı örneklerinin gösterimi
  • Package diyagramı: import, merge ve bağımlılık yönetimi
  • Katmanlı paket yapısında döngüsel bağımlılığın tespiti
  • Component diyagramı: provided ve required interface, port
  • Composite structure diyagramı ile iç yapı
  • Bileşen bağlaşımını azaltma ve arayüz sözleşmeleri
Modül 4
SOLID İlkeleri
  • SRP: değişim nedeni kavramı ve sorumlulukların ayrıştırılması
  • OCP: soyutlama ile genişleme, if-zincirlerinin temizlenmesi
  • LSP: sözleşmeyle tasarım ve Kare-Dikdörtgen ihlali
  • ISP: şişkin arayüzün rol arayüzlerine bölünmesi
  • DIP: yüksek seviyeli modülün soyutlamaya bağımlı kılınması
  • Kod kokularından SOLID ihlali tespiti ve düzeltme sırası
Günün hedefiKatılımcı Factory, Decorator ve Observer ile yapıları tasarım desenlerine taşır ve temiz kod uygular.
Modül 1
Yaratımsal Desenler
  • Singleton ve thread-safe lazy başlatma (double-checked locking, Java enum singleton, C# Lazy<T>)
  • Factory Method ile nesne üretiminin alt sınıfa devri
  • Abstract Factory ile ürün aileleri (tema seti, veritabanı sağlayıcısı)
  • Builder ve akıcı (fluent) arayüz ile çok parametreli nesne inşası
  • Prototype ile kopyalama: yüzeysel ve derin klon farkı
  • Singleton yerine DI konteyneri ve nesne havuzu (object pool) alternatifleri
Modül 2
Adapter, Facade, Decorator ve Proxy
  • Adapter ile eski bir kütüphaneyi yeni arayüze uyarlama (nesne ve sınıf adaptörü)
  • Facade ile alt sistem karmaşıklığını tek giriş noktasında gizleme
  • Decorator ile çalışma zamanında davranış ekleme ve Java I/O stream zinciri
  • Decorator ile kalıtım patlamasının (subclass explosion) önlenmesi
  • Proxy türleri: sanal (lazy), koruma ve uzak (remote) vekil
  • Adapter, Decorator ve Proxy desenlerinin niyet farkları
Modül 3
Strategy, Observer ve Command
  • Strategy ile algoritma değişimi: indirim kuralları, sıralama ve ödeme yöntemleri
  • Observer ile olay yayını, push ve pull modelleri
  • Zayıf referanslar ve lapsed listener bellek sızıntısı
  • Command ile isteğin nesneleştirilmesi, undo/redo yığını
  • Komut kuyruğu ve makro komut (composite command)
  • C# delegate/event ve Java lambda ile desenlerin sadeleştirilmesi
Modül 4
Temiz Kod İlkeleri
  • Anlamlı adlandırma ve niyeti açık eden isimler
  • Küçük fonksiyonlar: tek iş, tek soyutlama seviyesi
  • Yorum yerine kodla ifade ve gerekli yorum türleri
  • Yinelemeyi kaldırma (DRY) ve yanlış soyutlama riski
  • Hata işleme: null yerine Optional/Result, istisna sınırları
  • Boy Scout kuralı ve sürekli iyileştirme

Eğitim Kazanımları

Program sonunda katılımcılar:

✅
OOP Temeli

Sınıf, nesne ve kapsülleme ile gerçek problemleri nesne modeline dökebilirsiniz.

🔧
Kalıtım Tasarımı

Kalıtım ve interface'leri kırılgan olmayan, genişletilebilir bir hiyerarşide kullanabilirsiniz.

🧠
Koleksiyon ve Hata

Generic koleksiyonlar ve istisna yönetimi ile sağlam veri işleyen sınıflar yazabilirsiniz.

📐
Sınıf Modelleme

Alan nesnelerini ilişki türleri ve çokluklarıyla doğru bir sınıf diyagramına dökebilirsiniz.

🧩
Yapı Diyagramları

Paket ve bileşen diyagramlarıyla sistemin modüler yapısını ve bağımlılıklarını belgeleyebilirsiniz.

🛡️
Nesne Üretimi

Factory, Builder ve Prototype desenleriyle nesne yaratımını istemci kodundan ayırabilirsiniz.

📊
Yapısal Desenler

Adapter, Facade, Decorator ve Proxy desenlerini niyet farklarına göre doğru yerde kullanabilirsiniz.

🚀
Temiz Kod

Okunabilir, niyeti açık ve bakımı kolay kod yazma disiplinini uygulayabilirsiniz.

Kimler İçin Uygundur?

  • OOP'yi sözdizimi düzeyinden tasarım düzeyine taşımak isteyen yazılım geliştiriciler

Sıkça Sorulan Sorular

Bu eğitim kimler için uygundur?
OOP'yi sözdizimi düzeyinden tasarım düzeyine taşımak isteyen yazılım geliştiriciler.
Eğitim sonunda sertifika verilir mi?
Eğitimi tamamlayan katılımcılara Digital Vizyon Akademi Katılım ve Başarı Sertifikası verilir.
Eğitim kaç gün sürer ve nasıl işlenir?
Eğitim 3 gündür; aynı problem farklı yapılarla (class, record, interface, bileşim) çözülüp sonuçlar bellek, esneklik ve okunabilirlik açısından karşılaştırılır.
Struct ve record ne zaman tercih edilir?
Değer semantiği ve değişmezlik gereken küçük veri taşıyıcılarında record/struct, davranış yoğun nesnelerde class tercih edilir; eğitim bunu örneklerle gösterir.
Dil kısıtı var mı?
Java ve C# örnekleri paralel verilir; kavramlar Kotlin gibi dillere de uyarlanabilir.

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. Structures of Object-oriented Programming Eğitimi Sertifika Kodu DV-2026XX00 Tarih 27.10.2026 Yetkili İmza DV AKADEMİ

Eğitim Bilgileri

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

Bu Eğitimle Birlikte Tercih Edilenler

Yazılım Mimarisi ve Tasarım DesenleriOOP Principles & Design Patterns Eğitimi
Yazılım Geliştirme Eğitimleri

OOP Principles & Design Patterns Eğitimi

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

OOP ve tasarım desenleri eğitimi: SOLID, Factory, Builder, Adapter, Decorator, Strategy, Observer ve refactoring ile uygulamalı 3 günlük yazılım tasarım program

Detayları Gör →
Yazılım Mimarisi ve Tasarım DesenleriAgile & TDD Best Practices for APIs: SOLID Design Principles Eğitimi
Yazılım Geliştirme Eğitimleri

Agile & TDD Best Practices for APIs: SOLID Design Principles Eğitimi

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

API'ler için SOLID eğitimi: SRP, OCP, LSP, ISP, DIP, dependency injection, mock ile test edilebilir tasarım ve çevik refactoring ile uygulamalı 2 gün.

Detayları Gör →
Yazılım Mimarisi ve Tasarım DesenleriAgile & TDD Best Practices for APIs: Test-driven Development Design Patterns Eğitimi
Yazılım Geliştirme Eğitimleri

Agile & TDD Best Practices for APIs: Test-driven Development Design Patterns Eğitimi

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

API'ler için TDD eğitimi: red-green-refactor, test double, MockMvc, Testcontainers, Pact sözleşme testi ve tasarım desenleri ile uygulamalı 2 gün.

Detayları Gör →
Yazılım Mimarisi ve Tasarım DesenleriAgile Technical Tester: Refactoring Test Cases in Agile Projects Eğitimi
Yazılım Geliştirme Eğitimleri

Agile Technical Tester: Refactoring Test Cases in Agile Projects Eğitimi

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

Çevik teknik tester eğitimi: test kokuları, test case refactoring, Page Object, flaky test giderme, test verisi, mutation testing ve CI ile uygulamalı 2 gün.

Detayları Gör →
Yazılım Mimarisi ve Tasarım DesenleriAnaliz Mimarili ve İşlemsel Analiz UML Kullanarak - Pratik Atölye Scrum Yöntemi için PO'lar Eğitimi
Yazılım Geliştirme Eğitimleri

Analiz Mimarili ve İşlemsel Analiz UML Kullanarak - Pratik Atölye Scrum Yöntemi için PO'lar Eğitimi

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

Scrum PO'lar için UML analiz atölyesi: use case, aktivite, durum, domain model, kullanıcı hikayesi, kabul kriteri ve backlog iyileştirme ile uygulamalı 2 gün.

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