क्या आप वास्तव में चाहते हैं कि स्थिरांक के लिए विज्ञापन गतिरोध को समाप्त किया जाए, चाहे उनका नाम रखा जाए या नंगे:
for_each_chess_square (row, col) {
/*...*/
}
यदि आप वास्तव में इस तरह के छोरों और व्हाट्सएप को दोहराकर निरंतर को आगे बढ़ाने जा रहे हैं, तो इसके साथ रहना सबसे अच्छा है 8।
8आत्म-वर्णन है; यह स्थूल नहीं है जो किसी और चीज़ के लिए खड़ा है।
आप एवर नेवर गॉन (टीएम) इसे 9x9 शतरंज कार्यक्रम में बदल देते हैं और यदि आप कभी ऐसा करते हैं, तो 8 का प्रसार प्रमुख कठिनाई नहीं होगी।
हम टोकन 8 के लिए 150,000 लाइन कोड आधार खोज सकते हैं, और वर्गीकृत कर सकते हैं कि कौन सी घटनाएँ सेकंड में क्या मतलब है।
अधिक महत्वपूर्ण कोड को संशोधित करना है ताकि शतरंज का ज्ञान कम से कम कुछ स्थानों पर केंद्रित हो। एक, दो, शायद तीन शतरंज-विशिष्ट मॉड्यूल होना बेहतर है, जिसमें एक शाब्दिक 8 होता है, बत्तीस मॉड्यूल की तुलना में शतरंज-विशिष्ट जिम्मेदारी से लैस, एक प्रतीकात्मक नाम के माध्यम से 8 का उल्लेख करते हैं।
जब या यदि यह 8 स्थिरांक आपके कार्यक्रम में तनाव का स्रोत बन जाता है, तो आप उस समय इसे आसानी से ठीक कर सकते हैं। वास्तविक समस्याएं जो अब हो रही हैं, उन्हें ठीक करें। यदि आपको ऐसा नहीं लगता है कि आप उस विशेष 8 से बाधित हैं, तो उस वृत्ति के साथ जाएं।
मान लीजिए कि भविष्य में आप वैकल्पिक बोर्ड आयामों का समर्थन करना चाहते हैं। उस मामले में, उन छोरों कि क्या वे एक नामित निरंतर का उपयोग करें या परिवर्तन करना होगा 8, क्योंकि आयाम जैसे कुछ अभिव्यक्ति के द्वारा प्राप्त हो जाएगा board.widthऔर board.height। यदि आपके पास BOARD_SIZEहै 8, तो इन स्थानों को ढूंढना आसान होगा। तो वह कम प्रयास है। हालांकि, आपको पहली जगह के 8साथ बदलने के प्रयास के बारे में नहीं भूलना चाहिए BOARD_SIZE। समग्र प्रयास कम नहीं है। बदलने के 8लिए कोड पर एक पास बनाना BOARD_SIZE, और फिर वैकल्पिक आयामों का समर्थन करने के लिए दूसरा, केवल 8वैकल्पिक आयाम समर्थन से जाने की तुलना में सस्ता नहीं है ।
हम इसे विशुद्ध रूप से ठंडे, उद्देश्य जोखिम / लाभ विश्लेषण से भी देख सकते हैं। कार्यक्रम में अब नंगे निरंतर हैं। यदि इन्हें स्थिरांक द्वारा प्रतिस्थापित किया जाता है, तो कोई लाभ नहीं है; कार्यक्रम समान है। किसी भी बदलाव के साथ, गैर-जोखिम भरा जोखिम होता है। इस मामले में, यह छोटा है। फिर भी, लाभ के बिना कोई जोखिम नहीं लिया जाना चाहिए। इस तर्क के सामने आने वाले बदलाव को "बेचने" के लिए, हमें एक लाभ की परिकल्पना करनी होगी: एक भविष्य का लाभ जो एक अलग कार्यक्रम के साथ मदद करेगा: कार्यक्रम का एक भविष्य का संस्करण जो अब मौजूद नहीं है। यदि इस तरह के कार्यक्रम की योजना बनाई जा रही है, तो यह परिकल्पना और इससे जुड़े तर्क शालीन हैं और इसे गंभीरता से लिया जाना चाहिए।
उदाहरण के लिए, यदि आप अधिक कोड जोड़ने से दूर हैं, जो इन स्थिरांक को और आगे बढ़ाएगा, तो आप उनसे दूर होना चाह सकते हैं। यदि स्थिरांक के वे उदाहरण लगभग सभी उदाहरण हैं जो कभी भी मौजूद होंगे तो परेशान क्यों होंगे।
यदि आप कभी व्यावसायिक सॉफ्टवेयर पर काम करते हैं, तो ROI तर्क भी लागू होंगे। यदि कोई प्रोग्राम नहीं बिक रहा है, और कुछ हार्ड-कोडित संख्याओं को स्थिरांक में बदलने से बिक्री में सुधार नहीं होगा, तो आपको प्रयास के लिए मुआवजा नहीं दिया जाएगा। परिवर्तन में समय के निवेश पर शून्य रिटर्न है। पैसे से परे ROI तर्क सामान्यीकृत करते हैं। आपने एक कार्यक्रम लिखा, समय और प्रयास का निवेश किया, और इसमें से कुछ मिला: यह आपकी वापसी है, आपका "आर"। यदि उस परिवर्तन को अकेले करने से, आपको उस "आर" से अधिक मिलता है, चाहे वह कुछ भी हो, तो सभी तरीकों से। यदि आपके पास आगे के विकास के लिए कुछ योजना है, और यह परिवर्तन आपके "आर", डिट्टो में सुधार करता है। यदि परिवर्तन में आपके लिए कोई तत्काल या सुगम्य "आर" नहीं है, तो इसे भूल जाइए।