मैं अपने खाली समय में एक Android गेम बना रहा हूं। यह libgdx लाइब्रेरी का उपयोग कर रहा है इसलिए मेरे लिए काफी भारी लिफ्टिंग की गई है।
विकास करते समय, मैंने लापरवाही से कुछ प्रक्रियाओं के लिए डेटाटिप्स का चयन किया। मैंने हैशटेबल का उपयोग किया क्योंकि मुझे एक सहयोगी सरणी के करीब कुछ चाहिए था। मानव पठनीय प्रमुख मूल्य। इसी तरह की चीजों को प्राप्त करने के लिए, मैं एक वेक्टर का उपयोग करता हूं। मुझे पता है कि libgdx में वेक्टर 2 और वेक्टर 3 कक्षाएं हैं, लेकिन मैंने कभी उनका उपयोग नहीं किया है।
जब मुझे अजीब समस्याएं आती हैं और मदद के लिए स्टैक ओवरफ्लो की खोज करते हैं, तो मैं बहुत से लोगों को सिर्फ एक निश्चित डेटाटाइप का उपयोग करने वाले प्रश्नों को रटते हुए देखता हूं जब एक तकनीकी रूप से "उचित" होता है। एक ArrayList का उपयोग करने की तरह, क्योंकि इसमें नई ज्ञात सीमाओं के साथ एक int [] को परिभाषित करने की आवश्यकता नहीं है। या यहां तक कि इस तरह से कुछ तुच्छ:
for(int i = 0; i < items.length; i ++)
{
// do something
}
मुझे पता है कि यह हर पुनरावृत्ति पर item.length का मूल्यांकन करता है। हालांकि, मुझे यह भी पता है कि आइटम कभी भी 15 से 20 से अधिक आइटम नहीं होंगे। तो क्या मुझे ध्यान देना चाहिए कि क्या मैं हर पुनरावृत्ति पर आइटम्स का मूल्यांकन करता हूँ?
मैंने यह देखने के लिए कुछ परीक्षण चलाए कि ऐप किस विधि का उपयोग करता है जिसे मैंने केवल उचित बनाम वर्णित किया है, ट्यूटोरियल का पालन करें और समुदाय द्वारा सुझाए गए सटीक डेटा प्रकारों का उपयोग करें। परिणाम: एक ही बात। औसत 45 एफपीएस। मैंने फोन और गैलेक्सी टैब पर हर ऐप खोला। कोई फर्क नहीं।
इसलिए मुझे लगता है कि मेरा सवाल आपसे यही है: क्या कोई सीमा है जब यह उचित नहीं है? क्या यह कहना ठीक है - "जब तक यह काम पूरा हो जाता है, मुझे परवाह नहीं है?"