मैं यह करूँगा:
पथ ए: अर्ध-विशिष्ट विधि
जावा, C #, या पायथन जैसे अधिक नियमित वाक्यविन्यास वाली भाषा सीखें। पर्ल एक बहुत ही उपयोगी उपकरण है, लेकिन यह आपको चीजों को कैसे करने देता है, इसके संदर्भ में भी बहुत मुक्त है। मैंने जिन अन्य भाषाओं को सूचीबद्ध किया है, वे बहुत कम हैं, इसलिए बहुत कम हैं।
उक्त भाषा में डेटा स्ट्रक्चर्स के बारे में एक पुस्तक प्राप्त करें।
उक्त भाषा में एल्गोरिदम पर एक पुस्तक प्राप्त करें।
कोड पूर्ण और प्रभावी जावा / सी # / जो भी पायथन का संस्करण है, प्राप्त करें।
पाथ बी: जोएल स्पोल्स्की का पथ प्रबोधन (या मृत्यु, अपनी पिक लें)
"कोड" पुस्तक प्राप्त करें
K & R की "द सी प्रोग्रामिंग लैंग्वेज" प्राप्त करें
कंप्यूटर प्रोग्रामिंग की संरचना और व्याख्या प्राप्त करें
जहां तक विधि के जाने की बात है, विधि 1 आपको अधिक नियमित रूप से प्रोग्रामिंग सिखाएगा। कंप्यूटर विज्ञान एक सीमा तक अवधारणा (अभी तक कोई जटिलता सिद्धांत नहीं है, मुझ पर विश्वास करें) और आपको एक ऐसी भाषा प्रदान करता है जो अन्य लोगों के साथ परियोजनाओं में काम करने और बड़े अनुप्रयोग बनाने के लिए बेहतर है।
विधि 2 अधिक कट्टर है, यह "कोड" के मूल सिद्धांतों के साथ बहुत अधिक है मूल बातें बताते हुए, K & R मशीन स्तर के सामान और SICP को उच्च स्तर की अवधारणाओं को प्रस्तुत करता है। यह बहुत कठिन लेकिन अधिक केंद्रित मार्ग है।
किसी भी मामले में, अपने आप को समय दें। रोम एक दिन में नहीं बनाया गया था और न ही प्रोग्रामिंग कौशल हैं, भले ही आप उस पर एक प्रतिभाशाली हों। पीटर नॉरविग के 10 वर्षों में प्रोग्रामिंग सामान्य निबंध है जो मैं लोगों को बताता हूं।
परिशिष्ट:
जहाँ तक उपलब्ध नि: शुल्क सामान: नीचे सूचीबद्ध के रूप में पाइथन द हार्ड वे एक अच्छी शुरुआत है, वहां से कंप्यूटर वैज्ञानिक की तरह सोचना एक उचित निरंतरता है।
वहाँ एल्गोरिदम पर संसाधनों की एक संख्या है और ईमानदारी से आप शायद समस्या के बिना चरण 3 और 4 स्विच कर सकते हैं। ध्यान रखें, यह वह जगह है जहाँ गणित वास्तव में दिखना शुरू हो जाता है इसलिए जब आप इस अवस्था में पहुँचते हैं तो मदद मांगने से कभी न डरें। यह एक उचित मुक्त मार्गदर्शिका प्रतीत होती है ।
वास्तव में कोड को पूरा करने के लिए कोड के बराबर एक नि: शुल्क नहीं है, हालांकि एक पायथनोसा की तरह कोड बहुत ठोस लगता है। बड़ी बात यह है कि एक बार फंडामेंटल डाउन होने के बाद आपको अपने कोड को पठनीय बनाने पर ध्यान केंद्रित करना होगा। यह उसी तरह से "आवश्यक" नहीं है जिसमें आपका सभी कोड वाक्यविन्यास सही है, लेकिन यह छोटे कार्यक्रमों से परे या लंबी अवधि में किसी चीज़ पर काम करने से पहले आपको बहुत आसान बना देता है।
आप पा सकते हैं कि मैंने ज्यादातर पायथन पर ध्यान केंद्रित किया है, ऐसा इसलिए है क्योंकि यह तीनों में से सबसे आसान है जिसमें अच्छी तरह से लिखा हुआ मुफ्त सामान मिल सकता है। मुझे लगता है कि ओरेकल द्वारा जावा के ट्यूटोरियल ठीक हैं, लेकिन वे थोड़े सूखे हैं और शुरुआती के लिए महान नहीं हैं। C # एक समान स्थिति में है, लेकिन न तो प्रलेखन की कमी से ग्रस्त है।
इसके अलावा, आपका पहला सीएस मजाक / वाक्य: आप अपनी शिक्षा को "रिफैक्टर" करना चाहते हैं, बैकट्रैक को नहीं।