हम सभी जानते हैं कि मैजिक नंबर (हार्ड-कोडेड वैल्यूज़) आपके प्रोग्राम में कहर बरपा सकते हैं, खासकर जब यह उस कोड के एक खंड को संशोधित करने का समय होता है जिसमें कोई टिप्पणी नहीं होती है, लेकिन आप कहां रेखा खींचते हैं?
उदाहरण के लिए, यदि आपके पास एक फ़ंक्शन है जो दो दिनों के बीच सेकंड की संख्या की गणना करता है, तो क्या आप प्रतिस्थापित करते हैं
seconds = num_days * 24 * 60 * 60
साथ में
seconds = num_days * HOURS_PER_DAY * MINUTES_PER_HOUR * SECONDS_PER_MINUTE
किस बिंदु पर आप तय करते हैं कि यह पूरी तरह से स्पष्ट है कि हार्ड-कोडेड मूल्य का क्या मतलब है और इसे अकेला छोड़ दें?
TimeSpan.FromDays(numDays).Seconds;
HOURS_PER_DAY will never need to be altered
), आप मंगल ग्रह पर तैनात सॉफ्टवेयर के लिए कभी भी कोडिंग नहीं करेंगे। : P
seconds = CALC_SECONDS(num_days);