मैं अपने एएसपी.नेट एमवीसी आधारित सीएमएस अनुप्रयोग आर्किटेक्चर पर कुछ फीडबैक ढूंढ रहा हूं।एएसपी.नेट एमवीसी अनुप्रयोग आर्किटेक्चर "दिशानिर्देश"
डोमेन मॉडल - सिस्टम कक्षाओं को परिभाषित करने के लिए कुछ भी नहीं पर निर्भर करता है। अभी के लिए, ज्यादातर एनीमिक।
भंडार परत - निकाला डेटा का उपयोग, केवल सेवाओं परत
सेवा स्तर से बुलाया - डोमेन मॉडल पर व्यापार तर्क प्रदर्शन करती है। नियंत्रकों को दृश्य मॉडल का पर्दाफाश करता है।
ViewModelMapper - सेवा उस दृश्य मॉडल और डोमेन मॉडलों के बीच आगे और पीछे तब्दील
नियंत्रक - सुपर पतली "यातायात पुलिस" शैली है कि सेवा परत और केवल देखने के मॉडल, कभी नहीं डोमेन मॉडल के संदर्भ में बात करती है साथ सूचना का आदान कार्यक्षमता
मेरा डोमेन मॉडल ज्यादातर डेटा ट्रांसफर (डीटीओ) ऑब्जेक्ट्स के रूप में उपयोग किया जाता है और इस समय कम से कम तर्क है। मुझे लगता है कि यह अच्छा है क्योंकि यह कुछ भी नहीं (सेवा परत में कक्षाओं तक भी नहीं) पर निर्भर करता है।
सेवा परत थोड़ा मुश्किल है ... मैं केवल नियंत्रकों को जीयूआई प्रोग्रामिंग की आसानी के लिए व्यूमोडल्स तक पहुंच प्राप्त करना चाहता हूं। हालांकि, कुछ सेवाओं को एक-दूसरे से बात करने की ज़रूरत है। उदाहरण के लिए, मेरे पास एक ईवेंटिंग सेवा है जो सामग्री टैग की जाने वाली अन्य श्रोता सेवाओं को सूचित करती है, जब ब्लॉग पोस्ट बनाए जाते हैं, आदि। वर्तमान में, डोमेन मॉडल को इनपुट के रूप में ले जाने या उन्हें वापस करने के तरीके आंतरिक रूप से चिह्नित होते हैं, इसलिए इनका उपयोग नहीं किया जा सकता नियंत्रक
ओवरकिल की तरह लगता है? पर्याप्त अमूर्त नहीं है? मैं मुख्य रूप से वास्तुकला के बारे में सख्त होने में सीखने के अभ्यास के रूप में ऐसा कर रहा हूं, वास्तविक उत्पाद के लिए नहीं, इसलिए कृपया "आप जो करना चाहते हैं उस पर निर्भर करता है" के आधार पर कोई प्रतिक्रिया नहीं है।
धन्यवाद!
तथ्य यह है कि आप इतने कम शब्दों में इतना कहने में कामयाब रहे हैं कि आपको एक सुराग देना चाहिए कि आप सही रास्ते पर हैं। – pdr