जैसा कि मैं इसे समझता हूं, एक यूनिटऑफवर्क कक्षा डोमेन में एक व्यापार लेनदेन की अवधारणा का प्रतिनिधित्व करने के लिए है। यह सीधे डेटाबेस लेनदेन का प्रतिनिधित्व नहीं करना चाहिए, जो केवल एक संभावित कार्यान्वयन का विवरण है।कार्य पैटर्न की इकाई में रोलबैक विधि का इरादा क्या है?
प्रश्न: तो कार्य पैटर्न के यूनिट के बारे में इतना दस्तावेज क्यों "प्रतिबद्ध" और "रोलबैक" विधियों का संदर्भ देता है?
इन अवधारणाओं का अर्थ डोमेन या डोमेन विशेषज्ञों के लिए कुछ भी नहीं है। एक व्यापार लेनदेन "पूरा" किया जा सकता है, और इसलिए यूनिटऑफवर्क को "पूर्ण" विधि प्रदान करनी चाहिए। इसी प्रकार, "रोलबैक" विधि के बजाय, इसे "साफ़" के रूप में मॉडल नहीं किया जाना चाहिए?
अद्यतन:
उत्तर: दोनों नीचे उत्तर सही हैं। वे यूओडब्ल्यू के दो प्रकार हैं: ऑब्जेक्ट पंजीकरण और कॉलर पंजीकरण। ऑब्जेक्ट पंजीकरण में, रोलबैक सभी इन-मेमोरी ऑब्जेक्ट्स में परिवर्तन पूर्ववत करने में कार्य करता है। कॉलर पंजीकरण में, रोलबैक सभी दर्ज किए गए परिवर्तनों को साफ़ करने में कार्य करता है जैसे कि कमेटी के बाद की कॉल कुछ भी नहीं करेगी।
दिलचस्प, धन्यवाद। हालांकि मैं इस बात से असहमत हूं कि यूओडब्ल्यू केवल आरडीबीएमएस से संबंधित है (वस्तु डीबी, या लेनदेन संबंधी स्मृति के बारे में क्या है)। वैसे भी, आपके उत्तर ने मुझे और अधिक शोध करने के लिए प्रेरित किया और मैं http://takacsot.freeblog.hu/Files/martinfowler/unitOfWork.html पर ठोकर खाई। मैं देखता हूं कि दो प्रकार के यूओडब्ल्यू हैं: कॉलर पंजीकरण और ऑब्जेक्ट पंजीकरण। मैंने ऑब्जेक्ट रजिस्ट्रेशन (एनएचबीरनेट सत्रों के माध्यम से) का उपयोग किया था, लेकिन मुझे इसके पीछे यूओडब्लू पैटर्न के बारे में स्पष्ट रूप से पता नहीं था।एक बार फिर धन्यवाद। –
@gWiz: क्या आप असहमत हैं यूओडब्ल्यू एक कार्यान्वयन विस्तार है? यदि आप सहमत हैं, तो केवल उन्हीं बिंदुओं को पार कर रहा है, जिन तरीकों से आप व्यवसाय प्रयोक्ता के साथ चर्चा करेंगे, यूओडब्ल्यू पर दिखाई नहीं दे रहा है। जहां तक आरडीबीएमएस बनाम अन्य दृढ़ता है, यह एक अर्थपूर्ण तर्क है, आपका व्यावसायिक उपयोगकर्ता अभी भी परवाह नहीं करता है - यूओएफडब्ल्यू जो कुछ भी लागू होता है - मेरा उत्तर अपडेट कर दिया गया है क्योंकि इसका मतलब केवल संबंधपरक पर लागू होना नहीं था। – orangepips
दिलचस्प। मुझे लगता है कि यूओडब्ल्यू एक कार्यान्वयन विस्तार है, लेकिन "व्यापार लेनदेन" की डोमेन अवधारणा का डोमेन विशेषज्ञों के लिए महत्वपूर्ण है। विशेषज्ञ "कमिट" या "रोलबैक" नहीं कहते हैं, लेकिन वे कह सकते हैं "यदि बी स्वीकार नहीं किया गया है, तो ए को न बदलें"। ऐसा इसलिए है क्योंकि एक व्यापार लेनदेन का विचार छुपा/अपेक्षित है। मैं तर्क दूंगा कि सामान्य रूप से, डीडीडी में सेवाओं के नाम पर "लेनदेन" होना चाहिए (और कार्यान्वयन में यूओडब्ल्यू का उपयोग कर सकते हैं)। –