Eğitimin Amacı ve Kapsamı
Tasarım kalıplarını ezbere uygulamak kodu gereksiz yere karmaşıklaştırırken, hiç kullanmamak değişime dirençli ve test edilemeyen sınıflar üretir. Bu eğitim, kod seviyesindeki GoF kalıpları ile uygulama seviyesindeki mimari stiller arasındaki bağı gerçek iş senaryoları üzerinden kurar.
SOLID ve GRASP ilkeleri, en sık ihtiyaç duyulan creational, structural ve behavioral tasarım kalıpları, dependency inversion, hexagonal (ports and adapters) ve clean architecture katmanları ile mimari trade-off analizi işlenir. Katılımcılar karmaşık koşullu mantık içeren bir kod tabanını adım adım refactor eder ve mimari karar kaydı (ADR) şablonu hazırlar.
Kimler Katılmalı?
- Kod kalitesini ve tasarım becerisini ileri taşımak isteyen orta ve kıdemli yazılımcılar
- Teknik tasarım ve code review sorumluluğu üstlenen ekip liderleri
- Modül ve uygulama mimarisine geçiş yapan yazılım mühendisleri
- Ön koşul: nesne yönelimli bir dilde (Java, C#, TypeScript vb.) geliştirme deneyimi
Kazanımlar
- SOLID ihlallerini ve code smell'leri tespit edip uygun kalıpla sadeleştirmek
- Factory, Builder, Strategy, State, Decorator ve Observer kalıplarını yerinde kullanmak
- İş mantığını framework ve veri tabanı detaylarından hexagonal/clean architecture ile ayırmak
- Aşırı mühendislik (over-engineering) ile gerçek esneklik ihtiyacı arasındaki sınırı çizmek
- Mimari kararları ADR formatında gerekçeleri ve alternatifleriyle belgelemek
Konular
Tasarım İlkeleri: SOLID, GRASP ve Bağımlılık Yönetimi
- Uyum (cohesion), bağımlılık (coupling) ve SOLID ilkelerinin pratik yorumu
- Composition over inheritance ve Dependency Inversion uygulaması
Creational ve Structural Kalıplar
- Factory Method, Abstract Factory ve Builder ile nesne oluşturma
- Adapter, Decorator, Facade ve Proxy ile entegrasyon ve davranış sarmalama
Behavioral Kalıplar ile İş Kurallarını Modelleme
- Strategy, State ve Template Method ile karmaşık if/switch bloklarını kaldırma
- Chain of Responsibility, Command, Mediator ve Observer desenleri
- Kalıba zorlama (patternitis) anti-pattern'leri ve refactoring egzersizi
Uygulama Mimarisi: Katmanlı, Hexagonal ve Clean Architecture
- Klasik katmanlı mimarinin sınırları ve bağımlılık yönünün tersine çevrilmesi
- Ports & Adapters (Hexagonal) ve Clean Architecture klasör/modül yapısı
- Vertical Slice Architecture ile özellik bazlı organizasyon
Mimari Kararlar, Kalite Özellikleri ve ADR
- Performans, bakım kolaylığı, test edilebilirlik ve güvenlik dengesi
- C4 diyagramları ile mimariyi görselleştirme ve ADR yazım atölyesi
Bu Kategorideki Diğer Eğitimler
-
Enterprise Design Patterns ve Kurumsal Yazılım Mimarileri
Martin Fowler PoEAA ve Enterprise Integration Patterns (EIP), dağıtık işlem ve tutarlılık modelleri, CQRS, modüler monolit, yüksek erişilebilirlik ve multi-tenancy; büyük ölçekli kurumsal sistemleri tasarlayan mimar ve kıdemli geliştiriciler için.
- Canlı Kurs
- 5 modül
-
.NET ile Microservices
ASP.NET Core, .NET Aspire, YARP API Gateway, gRPC, MassTransit (RabbitMQ/Kafka), Polly/Resilience, Outbox ve OpenTelemetry ile uçtan uca .NET microservices geliştirme; dağıtık .NET sistemleri kuran ekipler için uygulamalı eğitim.
- Canlı Kurs
- 5 modül
-
Java ile Microservices
Spring Boot 3, Spring Cloud Gateway, OpenFeign/RestClient, Resilience4j, Spring for Apache Kafka, Debezium/Outbox, Micrometer Tracing ve Testcontainers ile Java ekosisteminde uçtan uca microservices geliştirme.
- Canlı Kurs
- 5 modül
-
GraphQL ile API Geliştirme
Schema-first ve code-first GraphQL tasarımı, query/mutation/subscription, DataLoader ile N+1 çözümü, yetkilendirme, sorgu karmaşıklığı sınırlandırma ve Apollo Federation; esnek istemci-sunucu veri katmanı kuran ekipler için.
- Canlı Kurs
- 5 modül
-
Domain-Driven Design ile Yazılım Modelleme
Ubiquitous language, Event Storming, Subdomain ve Bounded Context haritalama, Aggregate/Entity/Value Object/Domain Event taktiksel kalıpları; karmaşık iş kurallarını iş birimleriyle ortak dilde modelleyen yazılım ve mimari ekipler için.
- Canlı Kurs
- 5 modül
-
gRPC ile Servisler Arası İletişim
Protocol Buffers (proto3) şema tasarımı, HTTP/2 tabanlı unary ve streaming RPC modelleri, Buf ile şema yönetişimi, deadline/iptal yayılımı, yük dengeleme ve mTLS güvenliği; düşük gecikmeli servisler arası iletişim kuran ekipler için.
- Canlı Kurs
- 5 modül
Bizimle iletişime geçin