2011-04-20 17 views
5

Design #1कौन सा डिज़ाइन कम युग्मन का समर्थन करता है?

Design #2

कौन सा डिजाइन समग्र कम युग्मन का समर्थन करता है? और क्यों?

+0

दूसरा दूसरा पंजीकरण में सभी "स्मारक" पर केंद्रित है, जो अच्छा लगता है। फिर भुगतान और बिक्री सिर्फ "जो कुछ कहा जाता है वह करें"। पहले मामले में, ज़िम्मेदारी अधिक वितरित होती है, और शायद मुश्किल हो सकती है। लेकिन ... सुनिश्चित नहीं है कि आप वास्तव में समग्र कम युग्मन को कैसे मापते हैं! मुझे आने वाले उत्तरों को भी देखने में दिलचस्पी होगी। :-) –

+0

मुझे लगता है कि आपको एक पुस्तक मिल सकती है ([इसे ऑनलाइन देखें] (http://books.google.co.uk/books?id=9CL446IzhuAC&pg=PA38&lpg=PA38&dq=events+chapter+one+coupling&source=bl&ots = qmJTOuCz90 और sig = EZKvZBjF8QmGohatC97HsmAqG0c & hl = hi & Ei = wj6tTqe5LcTX8gON_YyiCw और सा = एक्स और Oi = book_result और सीटी = परिणाम और resnum = 6 और वेद = 0CEMQ6AEwBQ # v = onepage & q = घटनाओं% 20chapter% 20one% 20coupling & f = गलत)) "घटना-आधारित प्रोग्रामिंग: सीमा करने के लिए घटनाओं लेने" डोंट शीर्षक मूल्य पर शीर्षक लें - अध्याय वन एक अंतर्दृष्टिपूर्ण वर्णन और विधि देता है जिसके द्वारा युग्मन व्यवहार को कम करने के लिए युग्मन को कम/स्थानांतरित किया जाता है। –

उत्तर

1

पहले भुगतान में बिक्री के साथ मिलकर है। दूसरे में यह रजिस्टर और बिक्री के साथ मिलकर। मैं कहूंगा कि पहले कम युग्मन है क्योंकि रजिस्टर में भुगतान की कोई अवधारणा नहीं है। भुगतान पूरी तरह से पूरी तरह समाप्त हो सकता है और पंजीकरण में कोई बदलाव की आवश्यकता नहीं होगी। दूसरे में यदि आपने भुगतान समाप्त कर दिया है तो पंजीकरण और बिक्री दोनों को बदलने की आवश्यकता होगी।

+0

किसी निर्माता बिंदु से, एक रजिस्टर रिकॉर्ड भुगतान करता है। तो यह भुगतान के बारे में जानकारी contaisn।तो परिभाषा के अनुसार, इसे भुगतान संख्या बनाना चाहिए? – user478636

+1

Thats प्रासंगिक नहीं है। अगर आप सभी रजिस्टरों, भुगतानों और बिक्री से छुटकारा पा लेते हैं, तो उन्हें ऑब्जेक्ट 1, ऑब्जेक्ट 2 और ऑब्जेक्ट 3 के साथ बदलें। मैं कहूंगा कि एक सबसे निर्णायक है। एक साधारण निर्भरता चार्ट बनाएं और रेखाओं की गिनती करें। रास्ता 2 - रजिस्टर बिक्री और भुगतान पर निर्भर करता है। बिक्री भुगतान पर निर्भर करता है -> यह 3 लाइनें है। रास्ता 1 - रजिस्टर बिक्री पर निर्भर करता है, बिक्री भुगतान पर निर्भर करती है -> thats 2. 2 3 से कम है इसलिए कम युग्मन – nsfyn55

+1

है "कंप्यूटर विज्ञान में, युग्मन या निर्भरता वह डिग्री है जिस पर प्रत्येक प्रोग्राम मॉड्यूल प्रत्येक पर निर्भर करता है अन्य मॉड्यूल। " – nsfyn55

1

पहले एक PaymentSale द्वारा बनाया गया है, इसलिए यह अधिक युग्मित है।

दूसरा एक में

वहाँ निर्भरता इंजेक्शन के साथ कम युग्मन है - http://en.wikipedia.org/wiki/Dependency_injection, डायन कि अलग करती निर्भरता संकल्प से व्यवहार, इस प्रकार अत्यधिक निर्भर घटकों decoupling एक डिजाइन पैटर्न है। Payment और Sale पहली तस्वीर में अत्यधिक निर्भर थे।

+1

मुझे यकीन नहीं है कि मैं इसके साथ सहमत हूं (स्पष्ट कारणों के लिए :))। DI या कोई DI डिज़ाइन को कम या कम नहीं बनाता है। इस मामले में उन वर्गों में से एक को फ्लाई पर भुगतान तत्काल करने की आवश्यकता है। यहां तक ​​कि यदि आप DI का उपयोग करते हैं तो यह बिक्री के भीतर पूरी तरह से भुगतान को समाहित करने के लिए कम युग्मन होगा। ऐसा लगता है कि एक अधिक समझदार डिज़ाइन रजिस्टर स्वीकृति भुगतान (पी) और बिक्री बनाने के लिए होगा, लेकिन यह मेरा रजिस्टर नहीं है – nsfyn55

+0

रजिस्टर इस काम को बिक्री के लिए एक प्रतिनिधि होना चाहिए, अन्यथा पंजीकरण निष्क्रिय हो जाएगा – user478636

+0

@ nsfyn55 आप कहते हैं DI डीएनएन टी (डिज़ाइन को कम या कम युग्मित करें) :) मैं कहता हूं कि यह करता है - डी पेमेंट के साथ पुन: उपयोग किया जा सकता है ... इसमें एक उदाहरण भी हो सकता है;) – dantuch

1

मुझे पहले उदाहरण में बिंदु नहीं दिख रहा है। पंजीकरण की आवश्यकता नहीं है?

दूसरे उदाहरण में किसी भी प्रकार का भुगतान किया जा सकता है। (वीजा, नकदी आदि)। इसलिए यह अधिक कमजोर युग्मित है।

संबंधित मुद्दे