सबसे पहले शायद कोई सही जवाब नहीं है, लेकिन मुझे यकीन है कि ऐसे लोग हैं जो मुझसे ज्यादा जानते हैं और सहायता करने में सक्षम होंगे।डीडीडी - प्रति इकाई रिपोजिटरी या सब कुछ के लिए?
मेरे पास 3 इकाइयां हैं: उपयोगकर्ता, ब्लॉग, पोस्ट।
सिस्टम में कई उपयोगकर्ता हो सकते हैं।
उपयोगकर्ता के पास कई ब्लॉग हो सकते हैं, लेकिन प्रत्येक ब्लॉग में केवल एक उपयोगकर्ता है।
ब्लॉग के पास पोस्ट करने के लिए कई पोस्ट हो सकती हैं, और सभी पोस्ट उसी उपयोगकर्ता से होंगे जो ब्लॉग का मालिक है (यानी यदि जॉन ब्लॉग फूड का मालिक है, केवल जॉन ही इस ब्लॉग में पोस्ट कर सकता है)। और निश्चित रूप से प्रत्येक पोस्ट में एक मूल ब्लॉग होता है।
फिर मेरे पास उपयोगकर्ता प्रोफाइल पेज है, जहां मैं सभी उपयोगकर्ता विवरण, उनके सभी ब्लॉगों के नाम, और अंतिम 5 पोस्ट प्रदर्शित करना चाहता हूं।
मेरे पास एक ब्लॉग पेज है जो ब्लॉग का विवरण, मालिक का नाम (उपयोगकर्ता) और सभी पदों के शीर्षक प्रदर्शित करता है।
तब मेरे पास पोस्ट पेज है जो पोस्ट विवरण, ब्लॉग नाम और मालिक का नाम प्रदर्शित करता है।
जैसा कि आप देखते हैं कि मेरे पास उनके बीच संबंध हैं, लेकिन उनमें से कोई भी कुल के रूप में कार्य नहीं कर सकता है।
कोड में इकाइयों को परिभाषित करना मुश्किल नहीं है, मेरे पास क्या समस्याएं हैं जो भंडार को परिभाषित कर रही हैं। मुझे कितनी आवश्यकता है? 3 - प्रत्येक इकाई प्रति एक? 1 - सब कुछ के लिए? मैं लुक-अप कैसे करूं?
उदाहरण के लिए उपयोगकर्ता पेज में 5 अंतिम पोस्ट प्राप्त करने के लिए। उपयोगकर्ता के पास ब्लॉग का कंटेनर रखने के बजाय पदों का संदर्भ नहीं है, जहां प्रत्येक ब्लॉग में बदले में पोस्ट के कंटेनर होते हैं। क्या मेरे पास मेरे भंडार में एक विधि होनी चाहिए जो उपयोगकर्ता आईडी स्वीकार करता है और पदों की एक सूची देता है? या शायद यह एक सेवा होनी चाहिए? इसके अलावा मैं आमतौर पर सभी डेटा लोड नहीं करता हूं बल्कि इसके बजाय मुझे आलसी लोडिंग होती है। मौजूदा उपयोगकर्ता इकाई को पुनर्प्राप्त करके, मैं अपने ब्लॉग लोड नहीं करता जब तक कि उनकी आवश्यकता न हो (जब पहली बार एक्सेस किया गया हो)।
अग्रिम धन्यवाद।
वास्तव में क्या आप 'भंडार' बनाम 'सेवा' से क्या मतलब है? आईएमओ यह प्रश्न एसओ के लिए बहुत व्यापक है। – home
आप परिभाषाएं यहां http://en.wikipedia.org/wiki/Domain-driven_design पा सकते हैं और हाँ मैं थोड़ा डर है कि प्रश्न एसओ के लिए बहुत व्यापक हो सकता है था ... –