यह उत्तर वास्तव में मेरी व्याख्या की तरह अधिकांश पैटर्न उत्तरों की तरह है, जो मैं कह रहा हूं उनमें से अधिकांश मार्टिन फाउलर की साइट पर Active Record और Table Data Gateway विवरणों पर आधारित है।
कुंजी उद्धरण के बारे में टेबल डाटा गेटवे इस प्रकार हैं:
एक वस्तु है कि एक गेटवे (466) एक डेटाबेस तालिका के रूप में कार्य करता है। एक उदाहरण तालिका में सभी पंक्तियों को संभालता है।
और इस बारे में सक्रिय रिकॉर्ड:
एक वस्तु है कि एक डेटाबेस तालिका या दृश्य में एक पंक्ति लपेटता, समाहित डेटाबेस का उपयोग, और उस डेटा पर डोमेन तर्क कहते हैं।
तो सबसे सरल स्तर पर, तालिका डेटा गेटवे डेटाबेस तालिका को सारणीबद्ध करता है जबकि सक्रिय रिकॉर्ड तालिका से एक पंक्ति लपेटता है।
अन्य महत्वपूर्ण बिंदु जो मैं पढ़ने से लेता हूं वह यह है कि सक्रिय रिकॉर्ड ऑब्जेक्ट्स डोमेन ऑब्जेक्ट्स हैं, जिसका अर्थ है कि आपके डेटाबेस में परिवर्तनों को सहेजने के लिए आप जिस ऑब्जेक्ट को अपडेट करते हैं() वह ऑब्जेक्ट भी है जिसमें व्यवसाय तर्क होता है। टेबल डेटा गेटवे के साथ यह मामला नहीं है, गेटवे आमतौर पर एक परत के रूप में कार्य करेगा जो आपके डेटाबेस कॉल से डोमेन ऑब्जेक्ट्स में आउटपुट का अनुवाद करता है और जब आप उन ऑब्जेक्ट्स में परिवर्तन जारी रखना चाहते हैं तो आप वापस गेटवे पर जाते हैं और बताते हैं बचाने के लिए प्रवेश द्वार।
आखिरकार, तालिका तालिका गेटवे पूरी तालिका पर काम करता है, डिजाइन के संदर्भ में और आप अपने डेटा पहुंच के बारे में कैसा सोचते हैं।
मैंने कभी भी सक्रिय रिकॉर्ड का उपयोग नहीं किया है, लेकिन एक बड़ी परियोजना पर काम किया है जो इसके डिजाइन में टेबल डेटा गेटवे का उपयोग करता है। यह एक ठोस पैटर्न है लेकिन कई लोग कहेंगे कि यह काफी दिनांकित है - आपके सभी डेटा एक्सेस को एक ही स्थान पर रखने के फायदे और आपके डीबीए को डेटाबेस के स्वामित्व की अनुमति देने वाले ओआरएम के नए फायदों से लिया गया है जो डेवलपर्स को अच्छी वस्तु देते हैं विकास के समय और पारस्परिकता के संदर्भ में संबंधित फायदे के साथ डेटा के साथ काम करने के उन्मुख तरीके।
(मैं इस बात पर टिप्पणी करने के लिए वास्तव में उत्सुक नहीं हूं कि उपरोक्त पैराग्राफ में से कितना सच है - मैं बस कुछ समुदाय की राय का प्रतिनिधित्व करने की कोशिश कर रहा हूं। मैं वर्तमान में एक ओआरएम का उपयोग करता हूं लेकिन खुशी से वापस जा सकता हूं गेटवे दृष्टिकोण)
स्रोत
2011-09-17 20:34:09