मैं डीडीडी और संबंधित विषयों के तरीके सीखने की कोशिश कर रहा हूं। मैं "बैंक" को लागू करने के लिए सरल बंधे हुए संदर्भ के विचार के साथ आया था: खाते हैं, पैसा जमा किया जा सकता है, निकाला जा सकता है और उनके माध्यम से स्थानांतरित किया जा सकता है। परिवर्तनों का इतिहास रखना भी महत्वपूर्ण है।
मैंने खाता इकाई की पहचान की है और उस घटना में सोर्सिंग के लिए अच्छा होगा कि वह इसमें बदलावों पर नज़र रखे। अन्य संस्थाएँ या मान ऑब्जेक्ट समस्या के लिए अप्रासंगिक हैं, इसलिए मैं उनका उल्लेख नहीं करूँगा।
जमा और निकासी पर विचार करते समय - यह अपेक्षाकृत सरल है, क्योंकि केवल एक समग्र रूपांतर है।
जब यह अलग हो जाता है, तो दो - दो समुच्चय को एक MoneyTransferred घटना द्वारा संशोधित किया जाना चाहिए । DDD एक लेन-देन में कई समुच्चय को संशोधित करता है। दूसरी ओर इवेंट सोर्सिंग का नियम संस्थाओं पर घटनाओं को लागू करना और उनके आधार पर राज्य को संशोधित करना है। अगर घटना को केवल डेटाबेस में संग्रहीत किया जा सकता है, तो कोई समस्या नहीं होगी। लेकिन घटना के कारण होने वाली संस्थाओं के समवर्ती संशोधन को रोकने के लिए हमें प्रत्येक समुच्चय की घटना धारा को लागू करने के लिए (उनके लेनदेन के घावों को रखने के लिए) कुछ लागू करना होगा। वर्जनिंग के साथ एक और समस्या आती है - मैं घटनाओं को संग्रहीत करने के लिए सरल संरचनाओं का उपयोग नहीं कर सकता और उन्हें समग्र रूप से लागू करने के लिए वापस पढ़ सकता हूं।
मेरा प्रश्न है - मैं उन तीन सिद्धांतों को एक साथ कैसे ला सकता हूं: "एक समग्र एक लेनदेन", "घटना-> कुल में परिवर्तन" और "समवर्ती संशोधन रोकथाम"?