C++ INHERITANCE & POLYMORPHISM: PURE VIRTUAL FUNCTIONS & ABSTRACT CLASSES EĞİTİMİ

Saf sanal fonksiyonlar ve soyut sınıflarla arayüz kurun

Pure virtual fonksiyon, soyut sınıf, arayüz tasarımı, gövdeli saf sanal fonksiyon ve eklenti mimarisi

C++ Pure Virtual Functions ve Abstract Classes eğitiminde saf sanal fonksiyonlar, soyut sınıf kuralları, arayüz tasarımı, NVI, Template Method, Strategy ve Factory desenleri, Google Mock ile test ve eklenti mimarisi uygulanır.

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

Eğitim Hakkında

Saf sanal fonksiyon, soyut sınıf, arayüz tasarımı ve genişletilebilir mimari

Bu eğitim, C++ ile arayüz tabanlı tasarımın temelini oluşturan saf sanal fonksiyonları ve soyut sınıfları anlatır. Katılımcılar = 0 söz dizimi, soyut sınıfın örneklenememesi, arayüz sınıfı kuralları, saf sanal destructor ve gövdesi, soyut sınıf ile somut sınıf ilişkisi, Strategy ve Factory ile birlikte kullanım, eklenti mimarisi ve test için sahte nesneleri uygular.

Süre ve Format

2 Gün. Her gün dört modül; 1. gün Saf Sanal Fonksiyonlar ve Soyut Sınıflar; 2. gün Uygulama Kalıpları.

Seviye

Orta Seviye — Saf sanal fonksiyon, soyut sınıf, arayüz tasarımı ve genişletilebilir mimari

Öğrenme Metodu

Katılımcılar bir şekil çizim ve ödeme sağlayıcı örneğinde arayüzleri soyut sınıflarla tanımlar, farklı uygulamaları tak-çıkar biçimde yazar.

Neden Bu Eğitim?

🎯Arayüzle tasarlayın

Uygulama yerine sözleşmeye bağımlı, esnek bir tasarım kurarsınız.

🛠️Test kolaylığı

Soyut arayüzlerle sahte (mock) nesne yazarak birim testi yapabilirsiniz.

🚀Genişletilebilir

Yeni davranışlar eklemek için mevcut kodu değiştirmezsiniz.

Anahtar Konular

c++ saf sanal fonksiyonsoyut sınıf c++arayüz sınıfıpure virtualnvi deyimitemplate methodstrategy desenigoogle mockc++ eklenti mimarisipolimorfizm c++
“İyi arayüz neyi yapacağını söyler, nasıl yapacağını başkasına bırakır.”

Ön Koşullar

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

1
Sanal fonksiyon bilgisi

Virtual ve override kavramı bilinmelidir.

2
Kalıtım temeli

Public kalıtım ve taban/türemiş sınıf ilişkisi bilinmelidir.

3
Akıllı işaretçiler

unique_ptr ve shared_ptr kullanımı temel düzeyde bilinmelidir.

4
Derleyici

C++11 veya üzeri bir derleyici 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ı, soyut sınıflarla arayüz tanımlayıp somut sınıflarla gerçekler.
Modül 1
Saf Sanal Fonksiyon
  • virtual void f() = 0 söz dizimi
  • soyut sınıfın örneklenememesi
  • soyut sınıfa işaretçi ve referans
  • türemiş sınıfın zorunlu override'ı
  • kısmen soyut hiyerarşi
  • derleme hata mesajları
Modül 2
Arayüz Sınıfı Tasarımı
  • Yalnızca saf sanal üyeli arayüz
  • sanal destructor zorunluluğu
  • saf sanal destructor ve gövdesi
  • veri üyesiz arayüz
  • NVI (Non-Virtual Interface) deyimi
  • const doğruluğu
Modül 3
Gövdeli Saf Sanal ve Şablon Metot
  • Saf sanal fonksiyona gövde yazma
  • varsayılan davranış
  • Template Method deseni
  • protected yardımcılar
  • soyut sınıfta constructor
  • yaşam döngüsü kuralları
Modül 4
Soyut Sınıf Tasarım Kararları
  • Soyut sınıf ile somut taban sınıf
  • arayüz ayrımı ilkesi
  • veri taşıyan soyut sınıf
  • genişletme ve geriye uyumluluk
  • final ile hiyerarşi kapatma
  • yaygın hatalar
Günün hedefiKatılımcı, soyut arayüzlerle desen tabanlı, test edilebilir bir mimari kurar.
Modül 1
Strategy ve Factory
  • Strategy ile davranış değiştirme
  • Factory Method ve Abstract Factory
  • unique_ptr döndüren fabrikalar
  • kayıt tabanlı fabrika
  • arayüze bağımlılık
  • bağımlılık enjeksiyonu
Modül 2
Sahte Nesneler ve Test
  • Mock sınıf yazımı
  • Google Mock ile arayüz taklidi
  • bağımlılığı ayırarak birim test
  • spy ve stub farkı
  • test edilebilir tasarım
  • arayüz ile test uyumu
Modül 3
Eklenti Mimarisi
  • Paylaşımlı kütüphane ve arayüz
  • extern C fabrika fonksiyonu
  • dlopen/LoadLibrary tanıtımı
  • ABI kararlılığı sorunları
  • sürümlenmiş arayüz
  • eklenti yaşam döngüsü
Modül 4
Polimorfik Kapsayıcılar
  • vector<unique_ptr<Arayüz>>
  • ziyaretçi (Visitor) deseni
  • çift yönlü gönderim
  • dynamic_cast maliyeti
  • variant alternatifi
  • örnek proje ve kod inceleme

Eğitim Kazanımları

Program sonunda katılımcılar:

✅
Soyut sınıf

Saf sanal fonksiyonla soyut sınıf tanımlayıp türemiş sınıflarla gerçekleyebilirsiniz.

🧠
Arayüz tasarımı

Sanal destructor ve NVI ilkelerine uygun arayüz sınıfları yazabilirsiniz.

🔧
Saf sanal gövde

Saf sanal destructor ve gövdeli saf sanal fonksiyon kurallarını uygulayabilirsiniz.

📐
Şablon metot

Template Method deseniyle ortak akış ve özel adımlar kurabilirsiniz.

🧪
Strategy ve Factory

Strategy ve Factory desenlerini arayüzlerle gerçekleyebilirsiniz.

🚀
Mock ile test

Soyut arayüzlerin sahte uygulamalarıyla birim test yazabilirsiniz.

🔍
Eklenti mimarisi

Arayüz tabanlı basit bir eklenti sistemi tasarlayabilirsiniz.

📦
Polimorfik koleksiyon

vector<unique_ptr<Arayüz>> ile polimorfik koleksiyonları güvenli yönetebilirsiniz.

Kimler İçin Uygundur?

  • Sanal fonksiyonları bilen
  • genişletilebilir
  • test edilebilir C++ tasarımı kurmak isteyen yazılımcılar için uygundur

Sıkça Sorulan Sorular

Bu eğitim kimler için uygundur?
Sanal fonksiyonları bilen, genişletilebilir ve test edilebilir C++ tasarımı kurmak isteyen yazılımcılar için uygundur.
Soyut sınıf ile arayüz aynı mı?
C++'ta arayüz yalnızca saf sanal üyeli soyut sınıftır; durum taşıyan soyut sınıflarla farkı gösterilir.
Google Mock şart mı?
Şart değildir; elle mock da yazılır, Google Mock isteğe bağlı gösterilir.
Eklenti mimarisi ileri düzey mi?
Giriş seviyesinde anlatılır; ABI sorunlarının varlığı vurgulanır.
Hangi standart?
C++17 kullanılır.

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. C++ Inheritance & Polymorphism: Pure Virtual Functions & Abs Sertifika Kodu DV-2026XX00 Tarih 27.10.2026 Yetkili İmza DV AKADEMİ

Eğitim Bilgileri

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

Bu Eğitimle Birlikte Tercih Edilenler

C ve C++File Handling in C++: Performing Advanced File Stream Operations Eğitimi
Yazılım Geliştirme Eğitimleri

File Handling in C++: Performing Advanced File Stream Operations Eğitimi

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

C++ Gelişmiş Dosya Akışı İşlemleri eğitimi: İleri Akış İşlemleri ve Dosya Sistemi ve Uygulama konularını uygulamalı örneklerle öğrenin. DVA katılım sertifikalı

Detayları Gör →
C ve C++File Handling in C++: Working with File Streams Eğitimi
Yazılım Geliştirme Eğitimleri

File Handling in C++: Working with File Streams Eğitimi

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

C++ Dosya Akışlarıyla Çalışmak eğitimi: Dosya Akışı Temelleri ve Uygulamalı Dosya İşlemleri konularını uygulamalı örneklerle öğrenin. DVA katılım sertifikalı pr

Detayları Gör →
C ve C++First-class Functions in C++: Defining & Using First-class Functions Eğitimi
Yazılım Geliştirme Eğitimleri

First-class Functions in C++: Defining & Using First-class Functions Eğitimi

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

C++ First-class Functions eğitimi: Fonksiyon Tipleri ve İşaretçiler ve Functor ve Callback Tasarımı uygulamalı lab çalışmalarıyla işlenir. DVA katılım sertifika

Detayları Gör →
C ve C++First-class Functions in C++: Using Lambdas & Closures Eğitimi
Yazılım Geliştirme Eğitimleri

First-class Functions in C++: Using Lambdas & Closures Eğitimi

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

C++ Lambda ve Closure eğitimi: Lambda Sözdizimi ve Yakalama ve Generic Lambda ve Kullanım Desenleri uygulamalı lab çalışmalarıyla işlenir. DVA katılım sertifika

Detayları Gör →
C ve C++Functions in C++: Using Default Arguments & Function Overloading Eğitimi
Yazılım Geliştirme Eğitimleri

Functions in C++: Using Default Arguments & Function Overloading Eğitimi

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

C++ Default Arguments ve Function Overloading eğitimi: Varsayılan Argümanlar ve Fonksiyon Aşırı Yükleme uygulamalı lab çalışmalarıyla işlenir. DVA katılım serti

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