Açıklama
Domain Driven Design, gerçek dünyadaki iş modellerini herkesin anlayabileceği ortak bir dil (Ubiquitous Language) ile oluşturarak dijital dünyaya uyarlamak için yazılımların nasıl modellenmesi gerektiği konusunda bir felsefeyi savunur.
DDD, var olan ve yaşanan problemlerin Domain esas alınarak analiz edilmesi ve çözülmesi gerektiğini savunan ve bunun için Domain’in net bir şekilde anlaşılmasının gerekli olduğunu söyleyen bir felsefedir.
DDD hakkında daha fazla bilgi edinmek için: Eric Evans’ın “Domain-Driven Design: Tackling Complexity in the Heart of Software” adlı kitabını okuyabilirsiniz.
DDD, çözülmesi beklenen iş problemine odaklanarak yazılım geliştirmeye yönelik bir yaklaşımdır.
DDD, domain modelinizi doğru şekilde kurmanız için bir yaklaşım olduğunu söyleyebiliriz.
DDD’nin birçok avantajı bulunmaktadır:
- DDD, karmaşık yazılım sistemlerinin geliştirilme aşamasında ve bu karmaşık projeler hayata geçtikten sonra uygulamalarımızın sürekliliğini sağlamakta sıkça yaşanan temel problemlere çözümler getirmeye çalışan bir yaklaşımdır.
- DDD, projemizdeki karmaşıklığı çözmemize ve yönetilebilmesine yardımcı olan, ayrıca projemizi sürdürülebilir kılmamıza imkan veren bir yaklaşımdır.
- DDD ile, yazılımın iş kurallarına odaklanarak, daha kaliteli ve sürdürülebilir yazılımlar geliştirilebilir.
Bu eğitimde, Kompleks problemlerinin, Domain Driven Design yardımı ile problemlerin nasıl tanımlandığı, “doğru şekilde modellendiği” ve domain modelinizin koda nasıl aktarıldığını öğrenebileceksiniz.
DDD, sadece bir kod yazım tekniği değildir aynı zamanda problem çözme framework’ü diyebiliriz. Bu eğitim ile söz konusu framework’ün tüm evrelerini görebilirsiniz.
Eğitim Hakkında
Eğitim İçeriği:
- Domain Driven Design Giriş ve Tanıtım
- İyi, Kötü and Etkili Tasarım
- Stratejik Tasarım
- Taktiksel Tasarım
- Event Storming
- Designing / Implementing and Using Aggregates / Entity / Domain Events
- Model Tasarlama
- Komutlar ile aksiyon alma
- Consistency Boundary
- Bounded Context
- Context Mapping
- Kodlama
Eğitimi Kimler Almalı?
- Back-End uygulamaları geliştiren,
- Yazılım mimarileri üzerine çalışan,
- Büyük ölçekli ve kompleks yapılarda çalışan kişilerin katılımına uygundur.
Gereksinimler
Eğitime katılacak kişilerin orta düzey programlama bilgisine sahip olması beklenmektedir.
Yaygın bilinen bir yazılım dilini bilmek yeterlidir.
Bilgisayarında Visual Studio (veya Rider), Docker ve C# 8.0 kurulu olması gerekmektedir.
Bu eğitimi kurumsal olarak planlayın!
Bu eğitim kurumunuza özel farklı sürelerde ve içerikte planlanabilir. Eğitim hedeflerini gerçekleştirmek için detaylı zengin içerik ve planlama için bizimle iletişime geçiniz.