मुझे पहली बार डीडीडी (नेट में) के साथ अपने पैरों को गीला कर रहा है, क्योंकि मैं विरासत एंटरप्राइज़ एप्लिकेशन के कुछ मूल घटकों को पुन: आर्किटेक्ट कर रहा हूं।डीडीडी और कार्यान्वयन दृढ़ता
कुछ मैं साफ़ करना चाहता हूं, हम उचित डीडीडी आर्किटेक्चर में दृढ़ता को कैसे लागू करते हैं?
मुझे एहसास है कि डोमेन स्वयं निरंतर अनजान हैं, और उन्हें "सर्वव्यापी भाषा" का उपयोग करके डिजाइन किया जाना चाहिए और निश्चित रूप से महीने के डीएसी की बाधाओं या यहां तक कि भौतिक डेटाबेस में मजबूर नहीं होना चाहिए।
क्या मैं सही हूं कि रिपोजिटरी इंटरफेस डोमेन असेंबली के भीतर रहते हैं, लेकिन रेस्पोजिटरी कार्यान्वयन दृढ़ता परत के भीतर मौजूद है? दृढ़ता परत में डोमेन परत का संदर्भ होता है, कभी विपरीत नहीं?
मेरे वास्तविक भंडार विधियों (सीआरयूडी) कहां से बुलाए जा रहे हैं?
मैं यहां दिमित्री ने जो कुछ भी कहा है, उससे सहमत हूं, केवल एक चीज जो मैं स्पष्टता के लिए जोड़ूंगा वह यह है कि मैं आपके क्लाइंट/यूआई प्रोजेक्ट संदर्भों को 'एप्लिकेशन सर्विसेज' परत की अनुशंसा करता हूं, जो डोमेन पर विधियों को आमंत्रित करता है (या तो डोमेन समेकन या डोमेन सेवाएं) और यहां से भंडार कहता है। इस तरह सभी तर्क इस एप्लिकेशन सेवा के भीतर निहित हैं, और आप छोटे प्रयासों के साथ उपयोगकर्ता इंटरफेस को बदल/जोड़ सकते हैं। –
मैं केवल एक सेवा परत जोड़ूंगा जब आवेदन के लिए स्पष्ट लाभ हो, न केवल इसके लिए। एक सेवा परत अमूर्तता की एक अतिरिक्त परत है जो कई मामलों में आप बिना कर सकते हैं। –
@RobinvanderKnaap, यह सच नहीं है, वास्तविक समय सॉफ्टवेयर विकास की स्थिति में, एप्लिकेशन सेवा परत की आवश्यकता होती है। यदि आप UI dev टीम को डोमेन लेयर देते हैं, तो यह हो सकता है) इसका उपयोग कैसे करें, बी) इसका दुरुपयोग कर सकते हैं। आपको अपने व्यापार API (डोमेन लेयर) के साथ यूआई क्या कर सकता है इसके बारे में स्पष्ट होना चाहिए। –