आज हम TDD का प्रशिक्षण ले रहे थे और गलतफहमी के निम्नलिखित बिंदु पाए गए।
कार्य संख्याओं के "1,2" रिटर्न योग के लिए है, जो 3. है जो मैंने लिखा है (सी # में) था:
numbers = input.Split(',');
return int.Parse(numbers[0]) + int.Parse(numbers[1]); //task said we have two numbers and input is correct
लेकिन दूसरे लोग इसे दूसरे तरीके से करना पसंद करते थे। पहला, इनपुट "1,2" के लिए उन्होंने निम्नलिखित कोड जोड़ा:
if (input == "1,2")
return 3;
फिर उन्होंने इनपुट "4,5" के लिए एक और परीक्षण पेश किया और कार्यान्वयन को बदल दिया:
if (input == "1,2")
return 3;
else if (input == "4,5")
return 9;
और इसके बाद उन्होंने कहा "ठीक है, अब हम पैटर्न देखते हैं" और जो मैंने शुरू में किया उसे लागू किया।
मुझे लगता है कि दूसरा दृष्टिकोण टीडीडी परिभाषा को बेहतर मानता है लेकिन ... क्या हमें इसके बारे में इतना सख्त होना चाहिए? मेरे लिए यह ठीक है कि तुच्छ बच्चे के कदमों को छोड़ दें और उन्हें "ट्विनस्टेप्स" में मिला दें, अगर मुझे यकीन है कि मैं कुछ भी नहीं छोड़ूंगा। क्या मै गलत हु?
अद्यतन करें। मैंने यह स्पष्ट करके गलती की है कि यह पहली परीक्षा नहीं थी। पहले से ही कुछ परीक्षण थे इसलिए "रिटर्न 3" वास्तव में आवश्यकता को पूरा करने के लिए सबसे सरल कोड नहीं था।