«domain-driven-design» etiketlenmiş sorular

Etki alanına dayalı tasarım (DDD), uygulamayı gelişen bir modele bağlayarak karmaşık ihtiyaçlar için yazılım geliştirmek için bir yaklaşımdır.

5
İşlevsel programlama bağlamında anemik modelden bahsetmek hala geçerli mi?
DDD taktik tasarım modellerinin çoğu, nesne yönelimli paradigmaya aittir ve anemik model, tüm iş mantığının nesneler yerine hizmetlere konması durumunu açıklar ve böylece onları bir tür DTO yapar. Diğer bir deyişle, anemik model, karmaşık model için önerilmeyen bir ussal stilin eş anlamlısıdır. Saf işlevsel programlama konusunda pek tecrübeli değilim, ancak …

7
RESTful API'ler, anemik alan modellerini teşvik etme eğiliminde midir?
Alan odaklı tasarım ve REST'i hizmet odaklı bir mimariye uygulamaya çalıştığımız bir proje üzerinde çalışıyorum. % 100 REST uyumluluğundan endişe etmiyoruz; muhtemelen kaynak odaklı HTTP API'leri oluşturmaya çalıştığımızı söylemek daha iyi olurdu (Richardson'un REST olgunluk modelinin 2. Seviyesi ). Yine de, HTTP isteklerinin RPC stili kullanımından uzak durmaya çalışıyoruz, yani …


10
Bir GUID'i Birincil Anahtar Olarak Kullanma
Genelde veritabanlarında Birincil Anahtar olarak otomatik artış kimliklerini kullanırım. GUID kullanmanın yararlarını öğrenmeye çalışıyorum. Bu makaleyi okudum: https://betterexplained.com/articles/the-quick-guide-to-guids/ Bu GUID'lerin uygulama seviyesindeki nesneleri tanımlamak için kullanıldığını biliyorum. Ayrıca veritabanı düzeyinde birincil anahtar olarak depolanıyorlar. Örneğin, şu sınıfa sahip olduğumu söyle: public class Person { public GUID ID; public string Name; …

3
Uygulama veya etki alanı hizmetindeki DDD depoları
Bugünlerde DDD çalışıyorum ve DDD ile depoların nasıl yönetileceği ile ilgili bazı sorularım var. Aslında iki olasılıkla karşılaştım: İlk Okuduğum hizmetleri yönetmenin ilk yolu, bir uygulama hizmetine bir havuz ve bir etki alanı modeli enjekte etmektir. Bu şekilde, uygulama hizmeti yöntemlerinden birinde, bir etki alanı hizmeti yöntemini (iş kurallarını kontrol …


2
İş mantığı değiştiğinde başarısız olursa, Birim testi kırılgan kabul edilir mi?
Lütfen aşağıdaki kodu inceleyin; Kadın Cinsiyeti olan birinin teklif için uygun olup olmadığını görmek için test yapar1: [Fact] public void ReturnsFalseWhenGivenAPersonWithAGenderOfFemale() { var personId = Guid.NewGuid(); var gender = "F"; var person = new Person(personId, gender); var id = Guid.NewGuid(); var offer1 = new Offer1(id,"Offer1"); Assert.False(offer1.IsEligible(person)); } Bu birim testi …

1
Etki Alanı Etkinliği kullanmak veya uygulama katmanının her şeyi düzenlemesine izin vermek arasında nasıl seçim yapılır
İlk adımımı etki alanı odaklı tasarıma koyuyorum, mavi kitabı ve hepsini aldım ve kendimi belirli bir çözümü uygulamak için üç yol görüyorum. Kayıt için: CQRS veya Event Sourcing kullanmıyorum. Diyelim ki bir kullanıcı isteği uygulama servis katmanına giriyor. Bu isteğin iş mantığı (herhangi bir nedenden ötürü) varlık üzerindeki bir yönteme …

2
DDD - Toplayıcı kök depoları toplayıcıları kurtarıyor mu?
Mevcut bir uygulamanın greenfield modülü için DDD benzeri bir yaklaşım kullanıyorum; mimari nedeniyle% 100 DDD değil, ancak bazı DDD konseptlerini kullanmaya çalışıyorum. Ben sınırlı bir bağlam (O uygun terim olduğunu düşünüyorum - Hala DDD hakkında öğreniyorum) sahip iki varlıkları oluşan: Conversationve Message. Konuşma, bir ileti dizisi konuşma olmadan mevcut olmadığından …

4
DDD'de, doğrulama uygulaması mantığı veya etki alanı mantığı mı?
DDD kullanarak bir form modellediğimizi varsayalım; formun kendisiyle ilişkili belirli iş kuralları olabilir - belki öğrenci değilseniz bir gelir belirtmeniz ve evli olduğunuzu belirtmeniz durumunda çocuklarınızı listelemeniz gerekir. Ve bir ülke belirlediyseniz, geçerli bir ülke olmalıdır. Bu tür bir doğrulama etki alanında veya uygulama katmanında mı yaşıyor? Düşündüğüm diğer bazı …

3
Alan Adına Dayalı Geliştirme pratik açıdan nedir? [kapalı]
Kapalı . Bu sorunun daha fazla odaklanması gerekiyor . Şu anda cevapları kabul etmiyor. Bu soruyu geliştirmek ister misiniz? Soruyu, sadece bu yazıyı düzenleyerek tek bir soruna odaklanacak şekilde güncelleyin . 3 yıl önce kapandı . Alandaki bir geliştiriciden Domain Driven Development hakkında bir şey duydum. Değişen gereksinimlere göre gümüş …


2
DDD agrega serileştirme için en iyi yöntemler
DDD'ye göre, etki alanı mantığı, serileştirme, nesne-ilişkisel haritalama, vs. gibi teknik kaygılarla kirlenmemelidir. Peki, toplayıcıların durumunu alıcılar ve belirleyiciler aracılığıyla herkese açık bir şekilde ifşa etmeden nasıl seri hale getirir veya eşlersiniz? Örneğin depo uygulamaları için pek çok örnek gördüm, ancak pratikte hepsi haritalandırma için varlıklara ve değer nesnelerine kamu …

5
“Belirsiz” dünyada Birim Testi
Kendimi bir DDD uzmanı olarak görmüyorum, ancak bir çözüm mimarı olarak mümkün olduğunda en iyi uygulamaları uygulamaya çalışıyorum. DDD’de profesyonel olmayanların ve aleyhtarların (kamu) belirleyicisi "stil" in etrafında çok fazla tartışma olduğunu biliyorum ve tartışmanın her iki tarafını da görebiliyorum. Benim sorunum, her geliştiricinin işleri "doğru" şekilde yapacağına güvenemeyeceğim anlamına …

2
Domain Driven-Design - Varlık probleminde dış bağımlılıklar
Domain-Driven-Design'ı başlatmak isterdim, ancak başlamadan önce çözmek istediğim birkaç sorun var :) Bir Grup ve Kullanıcılarım olduğunu ve kullanıcı bir gruba katılmak istediğinde, bir groupsService.AddUserToGroup(group, user)yöntem çağırdığımı hayal edelim . DDD'de yapmalıyım ki group.JoinUser(user)bu oldukça iyi görünüyor. Sorun, kullanıcı eklemek için bazı doğrulama kuralları varsa veya kullanıcı gruba eklendiğinde bazı …

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.