क्या प्रारंभिक कोडिंग के दौरान ऑप्टिमाइज़ेशन तकनीकों का पालन करना एक अच्छा अभ्यास है या किसी को पहले कार्यक्षमता के अहसास पर ध्यान केंद्रित करना चाहिए?
यदि आपको पता है कि प्रदर्शन महत्वपूर्ण है (या महत्वपूर्ण), इसे अपने डिजाइन में मानें और इसे पहली बार सही तरीके से लिखें। यदि आप इसे अपने डिजाइन में भी नहीं मानते हैं और यह महत्वपूर्ण है, तो आप समय बर्बाद कर रहे हैं या "अवधारणा का सबूत विकसित कर रहे हैं"।
इसका हिस्सा अनुभव करने के लिए नीचे आता है; यदि आप अनुकूलन और आपके प्रोग्राम की समस्या वाले क्षेत्रों को जानते हैं या अतीत में पहले से ही समान कार्यक्षमताओं को लागू कर चुके हैं, तो आपका अनुभव निश्चित रूप से अंतिम परिणाम के करीब एक कार्यान्वयन बनाने में आपकी सहायता करेगा। यदि आपको अभी भी अवधारणा के सबूत की आवश्यकता है, तो आपको पूरा होने तक वास्तविक कार्यक्रम नहीं लिखना चाहिए - यह निर्धारित करने के लिए कुछ परीक्षणों को लाएं कि समस्या के लिए कौन सा समाधान उपयुक्त है, फिर इसे ठीक से कार्यान्वित करें।
यदि कोई प्रारंभिक कोडिंग के दौरान कार्यक्षमता पर पूरी तरह से ध्यान केंद्रित करता है, तो बाद में अनुकूलन की देखभाल करना कितना आसान या मुश्किल है?
कुछ फ़िक्स त्वरित हैं, अन्य पूर्ण पुनः लिखने योग्य हैं। इस तथ्य के बाद जितना अधिक परिवर्तन और अनुकूलन करने की आवश्यकता है, उतना ही अधिक समय जब आप पुन: परीक्षण और खराब कार्यान्वित कार्यक्रम को बनाए रखते हैं। पुस्तकालय जो मांगों को बनाए रखने और बनाए रखने के लिए सबसे आसान हैं, वे आम तौर पर इंजीनियरों को समझते हैं कि कौन सा डिज़ाइन आदर्श है, और प्रारंभिक कार्यान्वयन के दौरान उस आदर्श को पूरा करने का प्रयास किया गया।
बेशक, यह भी मानता है कि आप एक लंबे समय तक कार्यक्रम का पक्ष लेते हैं!
इसी तरह का प्रश्न (वास्तव में एक डुप्लिकेट नहीं): http://stackoverflow.com/questions/895574/what-are-some-good-code-optimization-methods – TRiG