संक्षिप्त जवाब:
अभ्यास, अभ्यास, अभ्यास।
लघु-लघु उत्तर:
आपको याद है कि कैसे चलना है? आपको कैसे याद है कि कैसे बोलना है? माना जाता है कि ये कौशल बिलकुल समान नहीं हैं और इनकी आवश्यकता नहीं है, प्रतीत होता है, विश्वकोश ज्ञान (शुरुआती के लिए, कम से कम), लेकिन आप एक ही चीज़ का उपयोग कर रहे हैं: स्मृति।
जब मैं मानता हूं कि शुरुआती लोगों के लिए, प्रोग्रामिंग एक असंभव बड़ा विषय लग सकता है जब आप इसका अध्ययन करना शुरू करते हैं, तो मूल बातें प्राप्त करने के बाद यह किसी भी अन्य विषय की तरह हो जाता है।
जैसे ही मुझे पता चला कि, मैंने चीजों को छोटी और छोटी मात्रा में तोड़ना शुरू कर दिया है (मेरा अपना, अमूर्त का व्यक्तिगत संस्करण)। इस तरह, याद रखने में मुश्किल लगने वाली चीज़ आसान हो जाती है (कम से कम मेरे साथ ऐसा होता है)।
चीजों को लिखने से आपको अधिक सोचने में मदद मिलती है (शिक्षा में काम करने के बाद, मुझे पता है कि इससे बड़े पैमाने पर सकारात्मक प्रभाव हो सकते हैं)। खासकर यदि आप इसे अपने शब्दों में डाल सकते हैं - बल्कि इसे शब्दशः कॉपी करने के बजाय। यदि आप इसे पहले से ही जानते हुए भी बेहतर कर सकते हैं, तो इसे बेहतर या समान कर सकते हैं।
उदाहरण के लिए: C # में, स्ट्रिंग ऑब्जेक्ट अपरिवर्तनीय हैं। इसका मतलब यह है कि जब भी मैं एक स्ट्रिंग ऑब्जेक्ट की सामग्री को बदलने के लिए अपने कार्यक्रम को बताता हूं, तो वास्तव में क्या होता है मूल स्ट्रिंग नष्ट हो जाती है (तकनीकी रूप से इसे कचरा कलेक्टर के निम्नतम स्तर पर रखा गया है)। बिल्कुल उसी तरह जैसे जब कोई कलाकार संगमरमर की मूर्तिकला बनाते समय गलती करता है - तो उसे बदला नहीं जा सकता है, इस प्रकार यह नष्ट हो जाता है और नया बनाया जाता है।
यह एक महान उदाहरण नहीं है, लेकिन यह मूल बातें दिखाता है कि मुझे क्या मिल रहा है।
गुणवत्ता प्रलेखन भी मदद करता है। कुछ है कि मेरे प्रोग्रामिंग 101 व्याख्याता एक बार मुझसे कहा था कि मेरे साथ अटक:
अपनी टिप्पणी क्रिया करें। मूर्खता के मुद्दे पर नहीं, लेकिन आपको उन टिप्पणियों को लिखने में सक्षम होना चाहिए जो एक गैर-प्रोग्रामर समझ सकता है। इस तरह, आप जानते हैं कि परियोजना पर कोई और इसे पूरी तरह से समझ सकता है। कल्पना कीजिए कि आप एक प्रणाली को लागू करने में महीनों बिताएंगे, लेकिन आप जहां काम करने के रास्ते पर किसी तरह की भयानक दुर्घटना में शामिल हैं। किसी और को आपका काम सौंपा जाएगा - खासकर अगर यह क्रंच समय के करीब है - और यदि वे यह पता नहीं लगा सकते हैं कि आपका कोड क्या कर रहा है, तो उत्पादन बंद हो जाता है।
अच्छी पुस्तकें एक उत्कृष्ट संसाधन हैं। एक अलग ट्यूटर ने एक बार मुझसे कहा था कि अगर एक किताब में कोई इंडेक्स नहीं है (और उनमें से बहुत सारे हैं, तो वहाँ नहीं हैं), तो यह खरीदने लायक नहीं है।
Google एक अद्भुत संसाधन हो सकता है, लेकिन कॉपी-पेस्ट कोडर्स के बारे में पता होना चाहिए। उन साइटों से दूर रहें जो सिर्फ आपको स्पष्टीकरण के साथ कोड का एक ब्लॉक देती हैं। मैं कोड के छोटे ब्लॉकों पर एक पूरा लेख पढ़ना पसंद करता हूं, इस तरह से आप यह जानकर चले जाते हैं कि कोड का ब्लॉक क्या करना है, यह कैसे करता है, और प्रोग्रामर ने इसे क्यों लिखा है।
उम्मीद है की वो मदद करदे