तो एक सहकर्मी और मैं काफी गर्म बहस में हूं। हम एक नई परियोजना शुरू कर रहे हैं और हम बीडीडी का उपयोग करने का प्रयास कर रहे हैं। हम दोनों पहली बार टाइमर हैं और पूरी तरह से समझ में नहीं आता कि किस अभ्यास का उपयोग किया जाना चाहिए। हमने कुछ चश्मा लिखे हैं और अब हम कोड को कार्यान्वित कर रहे हैं। चीजें बहुत मुश्किल हो रही हैं क्योंकि बहुत सारे डेटाबेस इंटरैक्शन हैं। हम इस बात पर अटक गए हैं कि हमें अपने डेटा का नकल कैसे करना चाहिए। जिस विधि के बारे में हम जा रहे थे, हमें हमारे डेटा के बजाय हमारी विधियों का नकल करने की आवश्यकता होगी। अगर मैं कोड में आपको बताएंगे कि यह सबसे आसान है ...बीडीडी/टीडीडी मॉकिंग डेटा को मुश्किल तरीके से
public static void AssignLeadToDistributor(int leadId, int distributorId)
{
Lead lead = GetById(leadId);
lead.DistributorId = distributorId;
Save(lead);
}
असल में, हम GetById() और सहेजें() ओवरराइड करने के लिए नकली डेटा वापस करने के लिए हमें इस परीक्षण करने के लिए के लिए होगा।
public static void AssignLeadToDistributor(Lead lead, Distributor distributor)
{
lead.DistributorId = distirbutor.Id;
}
तो हम सिर्फ हमारे वस्तुओं नकली सकता है: यह इस तरह यह करने के लिए और अधिक समझ बनाने के लिए लगता है।
स्पष्ट रूप से दूसरी विधि परीक्षण करना आसान बनाता है। हालांकि, तर्क यह है कि हम अपने फ्रंट एंड कोड पर एक नया लीड और वितरक ऑब्जेक्ट नहीं लेना चाहते हैं, क्योंकि हमारे ऑब्जेक्ट्स की आईडी को पास करना आसान होगा। हमारे सामने के अंत में वास्तविक कोड पर काटना।
उम्मीद है कि मैंने काफी अच्छी तरह समझाया है।
आप क्या सोचते हैं? किस तरह से अधिक समझ में आता है?
अच्छी तरह से, निश्चित रूप से, बाइनरी निर्णय आरेख बहुत अच्छे हैं, लेकिन वे अंतिम आखिरी पीढ़ी की चीज नहीं हैं जो हम सब कुछ अप्रचलित जानते हैं ... ओह, रुको, कभी भी ध्यान न दें। –