cevap

8

Toplama başına bir deponuz olması doğrudur. Bununla birlikte ne değişebilir, alanınızdaki kümeler kümesidir. Müşteri/Sipariş/Ürün/Tedarikçi modeli, çeşitli şekillerde agregatlara ayrıştırılabilir. Agregalara ayrıştırma çeşitli faktörlere bağlıdır ve eldeki etki alanına bağlıdır.

Bir toplam, bir tutarlılık sınırı olmalıdır; bu, söz konusu varlıklarla ilişkili davranışlar bağlamında hangi varlık kümelerinin tutarlı olması gerektiğini tanımlaması anlamına gelir. Bu kısıtlama dikkate alındığında, agregatlar arasındaki nesne referansları ortadan kaldırılmalı ve kimlik referansları ile değiştirilmelidir. Modelinizde, müşteri, sipariş, ürün ve tedarikçinin farklı kümeler olabileceği ve bu nedenle ayrı depolar gerektirebileceği varsayılabilir. Müşteri bir toplam kök (müşteri toplamının bir parçası) ve sipariş müşteriye bağlı olsa da, müşteri havuzunun sipariş depolarını içermesi gerektiği anlamına gelmez. Sipariş deposu, sipariş toplamının kökü olduğundan, sipariş deposu tamamen ayrı olmalıdır.

Agregatların nasıl tasarlanacağına ilişkin ayrıntılı bir inceleme için Effective Aggregate Design by Vaughn Vernon'a bakın.

+0

Bunu düzeltmek ister misiniz: "... sipariş toplamı topluluğunun bir toplamı olduğundan," – Elisabeth

+0

İfadeyi biraz değiştirdim ama emin değilim istediğin şey düzeltildi mi? – eulerfx

+0

hm Sanırım siparişin neden sipariş toplamının kökü olduğunu anlamıyorum. Sipariş toplamının kökünün siparişin nerede olmayacağını söyler misin? Bağlantı için teşekkürlerimi işaretledim. – Elisabeth

0

Yukarıda özetlediğinizle ilgili 4 öğeniz var ve depo, ilgili tüm varlıkların işlem bağlamını uygular.

+0

soru, varlıklar ve veri modelleri hakkında DDD hakkında değil –

İlgili konular