PYTHON DESIGN PATTERNS: WORKING WITH BEHAVIORAL DESIGN PATTERNS EĞİTİMİ

Nesneler arası davranışı esnek tasarlayın

Strategy, Observer, Command, State, Template Method, Iterator ve Chain of Responsibility kalıplarını Pythonic biçimde uygulayın

Strategy, Observer, Command, State, Template Method, Iterator, Chain of Responsibility ve Visitor davranışsal kalıpları Python idiomlarıyla, pytest doğrulamalı örneklerle uygulanır.

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

Eğitim Hakkında

Davranışsal tasarım kalıplarının Python'daki sade karşılıkları

GoF davranışsal tasarım kalıplarını Python'un dinamik özellikleriyle uygulamayı öğretir. Strategy, Observer, Command, State, Template Method, Iterator, Chain of Responsibility, Mediator, Memento ve Visitor kalıpları; birinci sınıf fonksiyonlar, generator ve callable nesnelerle sadeleştirilmiş uygulamaları ve ne zaman gereksiz olduklarıyla birlikte ele alınır.

Süre ve Format

2 Gün. Her gün dört modül; 1. gün Algoritma ve Olay Kalıpları, 2. gün Durum ve Dolaşım Kalıpları konularına ayrılmıştır.

Seviye

İleri Seviye — Strategy, Observer, Command, State, Iterator ve diğer davranışsal kalıpların Python uygulaması

Öğrenme Metodu

Her kalıp önce sorunu gösteren kodla başlar, kalıp uygulanır, Pythonic sadeleştirme ile karşılaştırılır; örnekler pytest ile doğrulanır.

Neden Bu Eğitim?

🎯Doğru Kalıp

Sorunun hangi davranışsal kalıba uyduğunu hızla belirlersiniz.

🐍Pythonic Çözüm

Java tarzı kalıpları Python idiomlarıyla sadeleştirirsiniz.

🧩Esnek Davranış

Çalışma zamanında değişebilen davranışlar tasarlarsınız.

Anahtar Konular

python design patternsbehavioral design patternsstrategy pattern pythonobserver pattern pythoncommand patternstate patternchain of responsibilitypython tasarım kalıplarıGoF
“Kalıp bir hedef değil, tekrar eden bir sorunun adıdır.”

Ön Koşullar

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

1
Python OOP

Sınıf, kalıtım ve özel metotlar bilinmelidir.

2
Python 3.10+

Güncel Python sürümü kurulu olmalıdır.

3
IDE

VS Code veya PyCharm gibi bir editör hazır olmalıdır.

4
Tasarım Prensipleri

SOLID ilkelerine genel aşinalık faydalı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ı ile davranışı kapsülleyen kalıpları Python'da uygular.
Modül 1
Strategy
  • algoritma ailesini değiştirilebilir yapma
  • sınıf yerine fonksiyon ile strateji
  • indirim hesaplama örneği
  • stratejiyi sözlükte kaydetme
  • functools.partial ile parametreli strateji
  • if-elif zincirinden kurtulma
Modül 2
Observer
  • konu (subject) ve gözlemci ilişkisi
  • callback listesi ve abonelik iptali
  • weakref ile bellek sızıntısını önleme
  • olay veri yolu (event bus) yazımı
  • asenkron gözlemciler ve asyncio
  • Observer ile pub-sub farkı
Modül 3
Command
  • isteği nesneye dönüştürme
  • callable sınıf ve __call__
  • geri alma (undo/redo) yığını
  • makro komutlar ve kuyruk
  • komutları loglama ve yeniden oynatma
  • GUI ve CLI senaryoları
Modül 4
Template Method
  • iskelet algoritma ve kanca metotlar
  • abc ile soyut adımlar
  • veri işleme boru hattı örneği
  • kalıtım yerine kompozisyonla alternatif
  • __init_subclass__ ile doğrulama
  • Hollywood prensibi
Günün hedefiKatılımcı ile durum, dolaşım ve zincirleme kalıplarını uygular.
Modül 1
State
  • durum makinesi ve geçişler
  • durum nesneleri ile if bloklarını kaldırma
  • enum ve sözlük tabanlı geçiş tablosu
  • sipariş yaşam döngüsü örneği
  • transitions kütüphanesi tanıtımı
  • geçersiz geçiş hata yönetimi
Modül 2
Iterator ve Generator
  • __iter__ / __next__ protokolü
  • yield ile tembel dolaşım
  • itertools ile birleşim
  • ağaç yapısında özyinelemeli dolaşım
  • sonsuz akış ve islice
  • iterator tükenme tuzakları
Modül 3
Chain of Responsibility
  • istek işleyici zinciri
  • doğrulama ve middleware zinciri
  • işleyici zincirine dinamik ekleme
  • decorator ile zincir kurma
  • WSGI/ASGI middleware benzetmesi
  • zincirin kırılma noktaları
Modül 4
Memento, Mediator, Visitor
  • Memento ile snapshot ve geri yükleme
  • copy.deepcopy ve pickle sınırları
  • Mediator ile bileşen iletişimi
  • Visitor ve functools.singledispatch
  • ast.NodeVisitor örneği
  • bu kalıpların ne zaman gereksiz olduğu

Eğitim Kazanımları

Program sonunda katılımcılar:

✅
Strategy

Algoritmaları fonksiyon veya sınıf olarak değiştirilebilir kılabilirsiniz.

✅
Observer

Zayıf referanslı, abonelik iptali olan olay mekanizması kurabilirsiniz.

✅
Command

Undo/redo destekli komut yapıları yazabilirsiniz.

✅
State

Durum makinesini geçiş tablosuyla modelleyebilirsiniz.

✅
Iterator

Generator tabanlı tembel dolaşım tasarlayabilirsiniz.

✅
Chain

Middleware tarzı işleyici zinciri kurabilirsiniz.

✅
Pythonic Sadeleştirme

Kalıpları birinci sınıf fonksiyonlarla sadeleştirebilirsiniz.

✅
Kalıp Seçimi

Bir kalıbın gereksiz karmaşıklık olduğu durumları ayırt edebilirsiniz.

Kimler İçin Uygundur?

  • Python'da nesne yönelimli kod geliştiren
  • mimari kararlarda kalıp kullanmak isteyen kıdemli geliştiriciler
  • yazılım tasarımcıları

Sıkça Sorulan Sorular

Bu eğitim kimler için uygundur?
Python'da kıdemli düzeyde kod yazan ve mimari kararlarda tasarım kalıbı kullanmak isteyen geliştiriciler için uygundur.
Java tarzı kalıplar Python'da gerekli mi?
Birçoğu birinci sınıf fonksiyon ve generator ile çok sadeleşir; eğitimde hem klasik hem Pythonic sürüm karşılaştırılır.
Hangi kalıplar işleniyor?
Strategy, Observer, Command, Template Method, State, Iterator, Chain of Responsibility, Memento, Mediator ve Visitor.
Önceden prensip eğitimi şart mı?
Zorunlu değildir ancak SOLID bilgisi faydalıdır; 'Principles of Good Design' eğitimi tamamlayıcıdır.
Sertifika verilir mi?
Katılımcılara 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. Python Design Patterns: Working with Behavioral Design Patte Sertifika Kodu DV-2026XX00 Tarih 27.10.2026 Yetkili İmza DV AKADEMİ

Eğitim Bilgileri

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

Bu Eğitimle Birlikte Tercih Edilenler

PythonBüyük Veri ve Python ile Uygulamaları Eğitimi
Yazılım Geliştirme Eğitimleri

Büyük Veri ve Python ile Uygulamaları Eğitimi

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

Büyük veri ve Python uygulamaları eğitimi: PySpark, Dask, Polars, Parquet, Kafka akış işleme, Airflow ve ölçeklenebilir veri hattı tasarımı.

Detayları Gör →
PythonComplex Data Types in Python: Shallow & Deep Copies in Python Eğitimi
Yazılım Geliştirme Eğitimleri

Complex Data Types in Python: Shallow & Deep Copies in Python Eğitimi

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

Python shallow ve deep copy eğitimi: referans modeli, mutable-immutable farkı, copy.copy, copy.deepcopy, __deepcopy__ ve varsayılan argüman tuzakları.

Detayları Gör →
PythonComplex Data Types in Python: Working with Dictionaries & Sets in Python Eğitimi
Yazılım Geliştirme Eğitimleri

Complex Data Types in Python: Working with Dictionaries & Sets in Python Eğitimi

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

Python dict ve set eğitimi: sözlük yöntemleri, defaultdict, Counter, küme işlemleri, hash mantığı, comprehension ve performans ölçümü ile veri problemleri.

Detayları Gör →
PythonComplex Data Types in Python: Working with Lists & Tuples in Python Eğitimi
Yazılım Geliştirme Eğitimleri

Complex Data Types in Python: Working with Lists & Tuples in Python Eğitimi

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

Python liste ve tuple eğitimi: indeksleme, dilimleme, sort/sorted, comprehension, tuple unpacking, namedtuple, deque ve bellek-hız karşılaştırmaları.

Detayları Gör →
PythonConditional Statements & Loops: Advanced Operations Using for Loops in Python Eğitimi
Yazılım Geliştirme Eğitimleri

Conditional Statements & Loops: Advanced Operations Using for Loops in Python Eğitimi

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

Python ileri for döngüleri eğitimi: iç içe döngüler, enumerate, zip, comprehension, generator, itertools ve performans karşılaştırmalı uygulamalar.

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