एकीकरण प्रक्रिया स्वयं ही है जहां मुझे सबसे अधिक रचना करने की आवश्यकता है।
तो, आप का मतलब है कि आपके सिस्टम में डेटा बनाने की प्रक्रिया सबसे अधिक डोमेन ऑब्जेक्ट्स बनाई जाएगी?
यह समझ में आता है, और अधिकांश अनुप्रयोगों के अनुरूप है।
मुझे समझ में नहीं आता कि यह समेकन तर्क समाप्त होना चाहिए?
समेकन तर्क एक या अधिक सेवा घटकों, संभावना है कि एक या अधिक repository घटकों और एक या अधिक unit of work घटकों का इस्तेमाल करता द्वारा प्रदान किया जाएगा। वह सेवा संरचना जड़ में बनाई जाएगी, जैसा कि आपके द्वारा बनाए गए काम की कोई भी रिपॉजिटरी/इकाइयां बनेंगी।
डेटा स्वयं पूरी तरह गतिशील है। डेटा के लेआउट को स्थिर रूप से जानने के लिए आप अपने एप्लिकेशन को ढांचा नहीं बना सकते हैं, इस प्रकार आप इसे अपनी रचना रूट में लिख नहीं सकते हैं। न ही आप कोशिश करनी चाहिए।इसके बजाय आपका कोड आपके डोमेन डेटा ऑब्जेक्ट्स के बीच संबंधपरक स्कीमा को परिभाषित या मानचित्र करने के लिए ओआरएम का उपयोग कर सकता है।
फिर आप भंडारण से डेटा पुनर्प्राप्त करने के लिए काम की भंडार/इकाई का उपयोग कर सकते हैं। आप new
का उपयोग करके नया डेटा बनाने के लिए अपनी यूआई/सेवा का भी उपयोग करते हैं - इसमें डोमेन ऑब्जेक्ट्स के लिए कोई शर्म नहीं है जो पूरी तरह से डेटा हैं, और इसकी कोई निर्भरता नहीं है। काम के भंडार/इकाई में नए या संशोधित डेटा को जारी रखें।
यदि यह आपको क्रिंग करता है, तो आप हमेशा उन वस्तुओं को बनाने के लिए संरचना रूट से इंजेक्शन वाले कारखाने पैटर्न का उपयोग कर सकते हैं। लेकिन यदि आपने अपनी निम्न स्तरीय डोमेन ऑब्जेक्ट्स को DTOs होने के लिए संरचित किया है, तो यह आपको कुछ भी नहीं खरीदेगा, अगर कुछ भी हो।
तो आपको सबकुछ प्रदान करने के लिए एकता का उपयोग करने की आवश्यकता नहीं है, और आपको संरचना रूट में अपने सिस्टम में बिल्कुल हर ऑब्जेक्ट बनाने की ज़रूरत नहीं है। लेकिन आपको रचना प्रणाली में अपने सिस्टम के स्थिर टुकड़े, या यहां तक कि स्थिर रूप से कॉन्फ़िगर करने योग्य गतिशील टुकड़े लिखने की कोशिश करनी चाहिए। यह एकता जैसे डी कंटेनर के लिए बहुत अच्छी तरह से नक्शे।
स्रोत
2011-11-04 17:37:59
आपके उत्तर के लिए धन्यवाद। मेरे ऊपर एक प्रश्न है जो आपने ऊपर बताया है ... क्या मुझे हमेशा एक सेवा का उपयोग करना चाहिए जो बदले में किसी भी भंडार का उपयोग करने के विरोध में एक भंडार का उपयोग करता है? – inthegarden
@inthegarden: आप सीधे किसी सेवा की त्वचा पर रिपोजिटरी का पर्दाफाश नहीं कर सकते हैं, और आप इकाइयों को सीधे UI पर वापस नहीं कर सकते हैं। तो आपके ऐप के शीर्ष स्तर पर आपको * कुछ * परत की आवश्यकता होगी। यदि यह पूरी तरह से एक कॉल करने योग्य सेवा परत पर नक्शा करता है, तो यह बहुत अच्छा है। लेकिन मैं उस परत पर सबकुछ में सभी सेवा हुक नहीं डालूंगा * जब तक कि मैं वेब सेवा को कॉल करने वाले लोगों को यूआई पर कार्यक्षमता के प्रत्येक टुकड़े का पर्दाफाश नहीं करना चाहता था। सेवा यूआई से आवश्यकताओं का एक अलग सेट है, इसलिए सबकुछ इसके माध्यम से जाने के साथ अति उत्साही न हों। –