मैं एक उज्ज्वल व्यक्ति को कैसे प्रोग्रामिंग अनुभव के साथ सिखा सकता हूं, कैसे प्रोग्राम करूं? [बन्द है]


100

मुझे हमारे आईटी विभाग में एक ऐसे व्यक्ति को लेने के लिए कहा गया है जिसे कोई प्रोग्रामिंग अनुभव नहीं है, लेकिन वह एक स्मार्ट और सक्षम व्यक्ति है और उसे एक प्रोग्रामिंग स्तर पर चलने में मदद करने में मदद करता है, जो मौजूदा .Net अनुप्रयोगों का समर्थन करने वाला प्रवेश स्तर का डेवलपर कहता है। मैं निश्चित रूप से विश्वास करता हूं कि यह व्यक्ति कर सकता है लेकिन मैं उसे तेज करने के लिए सबसे तेज रास्ता ढूंढ रहा हूं। मेरे पास विचारों का एक समूह है, लेकिन यह देखना चाहता था कि दूसरे लोग क्या सोचते हैं। मुझे पता है कि यह इस बात पर भी निर्भर करेगा कि वह कैसे सीखता है, लेकिन मैं सामान्य रूप से बात कर रहा हूं।

तो सवाल: आपको क्या लगता है कि गैर-डेवलपर को विकास पर गति देने के लिए सबसे अच्छा तरीका है (इस मामले में .Net)?


1
शायद संबंधित प्रश्न: प्रोग्रामर.स्टैकएक्सचेंज.
com

मैंने सुना है कि पायथन द हार्ड वे गैर-प्रोग्रामर के लिए अच्छा है जो शुरू हो रहा है।
john2x

स्माल बेसिक पर एक नजर । यह शुरुआती के लिए सरल, लेकिन उपयोगी है।

3
मुझे लगता है कि प्रोग्रामिंग को किसी ऐसे व्यक्ति को समझाना जिसके पास आपकी बात करने का कोई मानसिक मॉडल नहीं है, बेकार है। पता लगाएँ कि आपकी भाषा किस भाषा के बारे में बात कर रही है और उन्हें ट्यूटोरियल मारा और उनके हाथ गंदे हो गए, फिर समझाएं। वे संघर्ष करेंगे और आप सीखने की प्रक्रिया में तेजी लाएंगे।
मफिन मैन

1
मैं उसे एडगर डीजकस्ट्रा के पढ़ने के लिए कहूंगा। वास्तव में कंप्यूटिंग विज्ञान को पढ़ाने की क्रूरता पर। उसे उस लेख के कारण के बारे में जानने के लिए प्राप्त करें, इसलिए वह संभावित मस्तिष्क क्षति के बारे में सावधान हो सकता है जो आम तौर पर स्वीकार किए जाते हैं। प्रोग्रामिंग सिखाने के तरीके
vfclists 17

जवाबों:


125

मैं आमतौर पर उसी क्रम को लिखता हूं जो कोई भी प्रोग्रामिंग सीखना चाहता है। यह बहुत सैद्धांतिक है, लेकिन यह एक अच्छी नींव देता है। यह पूर्णकालिक अध्ययन के तीन या चार महीने लगना चाहिए, लेकिन प्रोग्रामिंग कुछ ऐसा नहीं है जिसे आप रात भर सीखते हैं।

यदि आप इस अनुक्रम के माध्यम से प्राप्त नहीं कर सकते हैं, तो आप प्रोग्राम करने में सक्षम नहीं होंगे, इसलिए आप अभी भी छोड़ सकते हैं।

  1. कोड, चार्ल्स पेट्ज़ोल्ड द्वारा।
  2. सी प्रोग्रामिंग लैंग्वेज, के एंड आर
  3. कंप्यूटर प्रोग्राम्स की संरचना और व्याख्या, एबेल्सन और सुस्मैन।

मेरा नियम है: यदि आवश्यक हो, तो किन्नर बल द्वारा उन तीन पुस्तकों के माध्यम से अपना काम करें। आपके पास कोई भी प्रश्न पूछें, लेकिन केवल अपने दम पर यह पता लगाने के लिए संघर्ष करने के बाद। यदि आप इसे उन तीन पुस्तकों के माध्यम से बना सकते हैं, तो बधाई हो, आप एक प्रोग्रामर हैं, अब मैं आपको PERL IN 15 MINUTES में फेंक सकता हूं या जावा के बिग बुककेस में जो भी बकवास है वह बुकस्टोर पर है और आप ठीक प्रबंधन करेंगे। यदि आप इसे उन तीन पुस्तकों के माध्यम से नहीं बना सकते हैं, तो घर छोड़ दें, आप इसे प्राप्त करने वाले नहीं हैं।

मुझे नहीं लगता कि आपको ईमानदार होने के लिए सी और स्कीम सीखने की ज़रूरत है। वे भविष्य की शिक्षा के लिए सिर्फ एक आधार हैं। ये दो बिल्कुल सरल पुस्तकें सतह पर बहुत सरल हैं (सी और स्कीम सुपर-आसान भाषाएं हैं) लेकिन वे सिंटैक्स को भ्रमित करने के लिए समय बर्बाद किए बिना प्रोग्रामिंग की वास्तविक कला पर बहुत गहरे उतरते हैं, इसलिए वे फिर से तार शुरू करने के लिए उत्कृष्ट हैं एक अच्छा प्रोग्रामर बनने के लिए आपका दिमाग।

शॉर्टकट लेने का प्रयास करने और सीधे सीखने के लिए आप अभी सीखना चाहते हैं (जैसे C # और ASP.NET से शुरू करना) बर्बाद हैं।


25
किसी ऐसे व्यक्ति के रूप में, जिसे "प्रोग्रामर्स" के डेस्क पर अपना सिर पीटना पड़ा हो, जो अपनी C # क्षमताओं के लिए अत्यधिक अनुशंसित थे, लेकिन बहुत अच्छी तरह से प्रलेखित आधार वर्ग को लागू करने जैसी सरल चीजें नहीं कर सकते थे, c और c ++ प्रोग्राम में मेमोरी लीक पाते हैं, या बस अपने दम पर एक समस्या का पता लगाने या यहां तक ​​कि एक मध्यम गति से एक नया विचार जानने के लिए, मैं सहमत हूँ। यह अभिजात्य नहीं है; यह सामान्य ज्ञान है। यदि आप संकेत और पुनरावृत्ति में महारत हासिल नहीं कर सकते हैं, तो आप कभी भी उन लोगों के लिए बहुत उपयोगी नहीं होंगे जिन्हें डेवलपर्स की आवश्यकता होती है जो अपने दम पर समस्याओं को हल कर सकते हैं।
जोनाथन हेंसन

53
नहीं, यह एक अच्छा प्रोग्रामर बनने का एकमात्र तरीका नहीं है। लेकिन अगर तीन किताबें एक "कठिन सूची" है, तो आपको कम करके आंका जा सकता है कि यह प्रोग्रामर क्या करते हैं।
योएल Spolsky

32
आप कभी-कभी, जोएल के संपर्क से बाहर हो जाते हैं।
रॉबर्ट एस।

46
क्षमा करें, समाचारपत्रों को मेरे निजी क्लब में पहुंचने में कुछ दिन लगते हैं क्योंकि उन्हें देखने से पहले हमें एक वैलेट से इस्त्री करना होगा।
योएल Spolsky

19
दुर्भाग्य से, यह उत्तर up to speed quicklyभाग को विफल करता है ।
rlb.usa

30

एक गैर-डेवलपर को जल्दी से गति प्राप्त करने का सबसे अच्छा तरीका उन्हें प्रेरित करना है !

किसी भी सफलता के लिए, उम्मीदवार को कम से कम उत्सुक होना चाहिए, अगर वह भावुक न हो, तो प्रोग्रामिंग के बारे में (मंच की परवाह किए बिना)।

हालांकि मैं आदर्श उम्मीदवार के मामले में जोएल के साथ सहमत हूं, मैं कमजोर दिमाग में बहुत अधिक सिद्धांत रटना नहीं सावधान रहना होगा - यह केवल उन्हें बंद कर देंगे। यदि वे प्रेरित, जिज्ञासु और आशा से भावुक हैं, तो वे जादू देखने के बाद सिद्धांत को समझना चाहते हैं।

मैं पूरी तरह से @karudzo से सहमत हूँ - आत्म-उपलब्धि और एक रचनात्मक समीक्षा बहुत प्रेरणादायक हो सकती है।


29
"यदि आप एक जहाज का निर्माण करना चाहते हैं, तो लोगों को लकड़ी इकट्ठा करने के लिए ड्रम न दें और उन्हें कार्य और काम न सौंपें, बल्कि उन्हें समुद्र की अनंतता के लिए लंबे समय तक सिखाएं।" - एंटोनी डी सेंट-एक्सुपरी
जूलियन चास्टांग

जूलियन - अच्छा! ठीक ठीक!
17 अप्रैल को jkoreska

मैं इस एक पर पूरी तरह से आपके साथ सहमत हूँ! मैंने ऐसे कई डेवलपर्स का पता लगाया / पढ़ा है जिनके पास कोई अनुभव नहीं था और कई बार उन्हें पता ही नहीं था कि वे प्रोग्रामर को समाप्त कर देंगे। मैंने उन्हें रास्ते में मार्गदर्शन करके बस यही किया ... उनकी अपनी जिज्ञासा और लगन उन्हें अंतिम परिणाम तक ले जाती है। अगर उनके पास उन दो विशेषताओं में से कोई भी नहीं था, तो मुझे विश्वास नहीं होता कि जो उन्होंने हासिल किया, उसे हासिल करना उनके लिए संभव होगा। मैं बहुत सारे प्रोग्रामर के साथ काम करता हूं, जिनके पास एक या दोनों विशेषताओं का अभाव है और वे सिर्फ इसलिए हैं क्योंकि बहुत काम उपलब्ध है ... यह भयानक है!
पहुंचें

मैं सहमत हूँ। मुझे लगता है कि प्रोग्रामिंग सीखने का सवाल बहुत ही शाब्दिक रूप से उत्तर दिया गया है। लोग चीजों को एक कारण से सीखते हैं। लोग समस्याओं को हल करने, लोगों की मदद करने और विचारों को कुछ वास्तविक में बदलने के लिए कार्यक्रम करना सीखते हैं। मैं ऐसे लोगों से मिला हूं जो रास्ते में इसे भूल गए और जब उन्होंने इसे दोबारा खोजा तो उन्होंने प्रोग्रामिंग के लिए अपने प्यार को फिर से खोज लिया। जब आप वास्तव में कुछ सीखेंगे तो आप सीखेंगे, आपको सीखने के तरीके मिलेंगे, और आप बेहतर होंगे।
लुइस पेरेज़

12

मैं उसे तेज करने के लिए सबसे तेज रास्ता ढूंढ रहा हूं।

सबसे तेज़ तरीका हो सकता है कि आप उसे समय दें , हालाँकि वह आसानी से एक या दो साल का हो सकता है।

निश्चित रूप से, उसे एक सरल भाषा सिखाना आसान लगता है (C #, अगर वह .NET सामान करना है), लेकिन एक भाषा सीखना प्रोग्राम को सीखना नहीं है।

यदि उसने कभी प्रोग्राम नहीं किया है, तो, कम से कम एक भाषा के वाक्य रचना और पुस्तकालय के अलावा, उसे सरणियों, लिंक की गई सूचियों, जो भी भाषा वह सीखता है, संकलन, संसाधन प्रबंधन, प्रतिमान, पैटर्न, बिग- के संकलन मॉडल के बारे में सीखना होगा। ओ-संकेतन ... - पूरे एनचिल्डा। यह बहुत से सामानों को हल करने के लिए है, और हम में से ज्यादातर को इन मूल बातें सीखने में कई साल लग गए, और एक वास्तविक पेशेवर किसान बनने के लिए और भी अधिक।

वहाँ ऐसी सामग्री है जो इसमें बहुत कुछ शामिल करती है (जैसे स्ट्रॉस्ट्रुप की नवीनतम पुस्तक जो C ++ का उपयोग करके प्रोग्रामिंग सिखाती है , बजाय भाषा C ++ को पढ़ाने के), लेकिन इसमें बहुत कुछ नहीं है और ऐसा कुछ भी नहीं है जो इसमें शामिल हो। तो आदमी को सीखने और बहुत सारी किताबें और लेख पढ़ने के लिए तैयार होना चाहिए।

यह कैसे करना है: मेरे पास हाथ से भरा पाठ्यक्रम यहाँ पेस्ट करने के लिए नहीं है। (क्षमा करें।)
, हालांकि, मैं उसे एक प्रोग्रामिंग भाषा सिखाने के साथ शुरू करने के लिए क्या सलाह दूंगा, ताकि उसके पास कुछ प्रारंभिक प्रारंभिक प्रगति करने और कुछ उत्साहजनक परिणाम प्राप्त करने का मौका हो। इस तरह की भाषाएं सिखाने के लिए काफी कुछ किताबें हैं, जिन्हें आप परिचित हैं। यदि पुस्तक में कई अभ्यास हैं, और वह उन्हें करने के लिए तैयार है, तो उन लोगों की मदद करने के लिए बहुत समय बिताने के लिए तैयार रहें। यदि पुस्तक में कोई (एम) नहीं है, तो अपने स्वयं के बारे में अच्छी तरह से सोचना शुरू करें, लेकिन उन्हें अपने स्तर / समझ की गति के अनुकूल बनाने के लिए तैयार रहें।
अगर वह पहली भाषा C या C ++ नहीं थी, तो IMO में उसे इनमें से एक सीखना चाहिए। K & R उस के लिए अच्छा है, जैसा कि स्ट्रॉस्ट्रुप की टीसीपीएल है या, यदि वह (आपकी मदद से) खड़ी सीखने की अवस्था, कोएनिग / मू के साथ सौदा कर सकता है। इसका कारण यह है कि मैं आपको एक बार C या (IMO अधिमानतः) C ++ जानने की सलाह देता हूं, उन C #, जावा, ObjC में से किसी भी C को व्युत्पन्न करना अपेक्षाकृत आसान है ...

बाकी के लिए, उसे अच्छी पुस्तकों और लेखों की एक निरंतर धारा प्रदान करें। मुझे नहीं लगता कि यह बहुत उपयोगी है अगर हम उनमें से बहुत से सुझाव देते हैं, 1) क्योंकि इसे आपकी कंपनी की संस्कृति के अनुकूल होना है, और 2) आपको उस सामान को सीखने के लिए उसे बताने में सहज महसूस करना होगा।


1
"एंट्री लेवल डेवेलपर जो मौजूदा। नेट एप्लीकेशंस का समर्थन कर रहे हैं" ... "उन्हें एरेज़, लिंक्ड लिस्ट, जो भी भाषा वह सीखते हैं, मॉडर्नाइजेशन, रिसोर्स मैनेजमेंट, पैराडाइज, पैटर्न, बिट-ओ-नोटेशन के बारे में सीखना होगा" सभी 'हव्स के लिए अच्छे हैं', लेकिन मैं शर्त लगाता हूं कि कोड लिखने वाले डेवलपर्स का एक अच्छा हिस्सा उनके पास नहीं है।
कर्क ब्रॉडहर्स्ट

1
@KirkBroadhurst: अगर ऐसा है, तो आपकी कंपनी में कुछ गलत है।
एसबी

@ मुझे लगता है कि आप पाएंगे कि बहुत सारी कंपनियों में कुछ गलत है। ओपी की कंपनी सुझाव दे रही है कि एक गैर-प्रोग्रामर (लेकिन वह एक 'स्मार्ट आदमी' है!) को एक एप्लीकेशन सपोर्ट करने वाली भूमिका में ले जाया जाए। मुझे नहीं पता कि आप कहाँ काम करते हैं ... लेकिन मेरे अनुभव में यह 'वास्तविक दुनिया' है। वास्तव में अच्छा, सक्षम प्रोग्रामर अपवाद हैं - जैसे कि अधिकांश उद्योगों में, ज्यादातर लोग बस प्राप्त करने के लिए पर्याप्त अच्छा करते हैं।
कर्क ब्रॉडहर्स्ट

1
@KirkBroadhurst: जहां मैं काम करता हूं वह मेरा निर्णय है। मैं कंपनियों के अक्षम होने के कारण भाग गया हूं, और अगर कोई भी डेवलपर्स कम से कम इन चीजों के बारे में नहीं जानता है तो मैं भाग जाऊंगा।
sbi

7

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


4
"" अब यह अच्छा नहीं होगा यदि आपकी स्मृति आपके लिए प्रबंधित की गई थी, प्रत्येक वस्तु ऑब्जेक्ट-ओरिएंटेड थी, और आपको इन सभी खराब बिंदुओं से निपटने की ज़रूरत नहीं थी? "आपका मतलब है कि यहां एसटीएल है। रुको, क्या। । आपने मुझे शुरू से C ++ में STL का उपयोग करना क्यों नहीं सिखाया?
Raynos

खैर, एसटीएल मीठा है। मैं अब तक Windows API के बारे में अधिक बता रहा हूँ, जहाँ तक Windows प्रोग्रामिंग जाती है। विंडोज़ एपीआई को OOP को ध्यान में रखकर नहीं बनाया गया है। मुझे लगता है कि यह कुछ गरीब अध्यायों को बनाने के लिए एक बेहतरीन व्यायाम है जो एपीआई का उपयोग करके c ++ में लिखता है। उसके बाद मैंने उसे विंडो क्लास लिखी है और इवेंट लूप को इनकैप्सुलेट किया है ... आप जानते हैं, इसे ऑब्जेक्ट ओरिएंटेड बनाते हैं। फिर आखिरकार उनके पास काम करने के बाद मैं उन्हें विंडोज फॉर्म दिखाता हूं। यह वास्तव में उन्हें कुछ बुनियादी अवधारणाओं से निपटने के लिए मजबूर करता है - यानी कि विंडोज एप्लिकेशन कैसे काम करता है - कि किसी को कभी भी नहीं मिलेगा अगर वे सिर्फ .NET में कूद गए।
जोनाथन हेंसन

4
क्यों कोई छड़ी के साथ विंडोज़ एपीआई को छूएगा। मेरा मतलब hWNDहै कि 80 के दशक से सही के बारे में बात कर रहे थे ? स्पष्ट रूप से आप इसके बजाय कुछ अच्छे अमूर्त का उपयोग करते हैं (कौन सा अमूर्त एक पूरी तरह से अलग बहस है)। यकीन है कि यह जानने के लिए कि यह हुड के नीचे कैसे काम करता है, अच्छा है लेकिन आपको एब्स्ट्रैक्शन के लिए C # .NET की आवश्यकता नहीं है
रेयनोस

2
विंडोज एपीआई अद्भुत है। वैसे भी, मैं इसे केवल एक शिक्षण उपकरण के लिए उपयोग करता हूं। उदाहरण के लिए, लोग आमतौर पर यह नहीं समझ पाते हैं कि विंडोज़ के कार्यक्रमों में कैसे घटनाओं को जादुई रूप से निकाल दिया जाता है। इवेंट लूप के साथ उन्हें बेवकूफ बनाना मददगार होता है। इसके अलावा, प्रोग्रामर को कम से कम hWND से परिचित होने की आवश्यकता होती है, खासकर यदि वे ग्राफिक्स के साथ बेवकूफ बनाने वाले किसी भी एपिस के साथ काम कर रहे होंगे - जैसे कि आपको एक्सआईडी का उपयोग करने के बारे में जानने के बिना यूनिक्स में कुछ भी करने में कठिन समय होगा। वैसे भी, यह उन्हें सीखने के लिए मजबूर करता है कि विंडोज़ प्रोग्राम कैसे काम करता है। इसके अलावा, एक बार जब वे समाप्त हो जाते हैं, तो वे जानते हैं कि Windows.Forms कैसे काम करता है।
जोनाथन हेंसन

यह केवल सामान्य रूप से .NET में C # btw के लिए एक संक्रमण होने की आवश्यकता नहीं है। मुझे लगता है कि @ जॉयल के पास लॉकी एब्स्ट्रक्शन के कानून पर एक अच्छा लेख है क्यों कि अक्सर प्रोग्रामर के लिए फ्रेमवर्क का उपयोग करने से पहले हुड के नीचे देखना अच्छा होता है।
जोनाथन हेंसन

6

उन्हें कुछ सरल, लेकिन हल करने के लिए उपयोगी दें। उन्हें थोडा थमने दें और उन्हें चमकाने में मदद करें। उन पर मदद करने के लिए एक छोटी सी उपलब्धि की तरह कुछ भी नहीं है (हालांकि किसी को प्रोग्रामिंग w में दिलचस्पी नहीं है


6

जोड़ा प्रोग्राम तैयार करना। जब आप अपना कोड लिखते हैं तो उन्हें छाया दें - कोई भी कोड। घंटे के भीतर, फिर उन्होंने आपके लिए अपना कोड दर्ज किया है, जबकि आप उन्हें बताते हैं कि क्या करना है, यदि आवश्यक हो तो कीस्ट्रोके द्वारा कीस्ट्रोक करें। उनके कुछ सवालों के जवाब दें, लेकिन इतना नहीं कि आप बहुत धीमे हो जाएं - बस उन्हें यह सब अंदर लेने दें। वे आपके टाइपो और आपके बगों से भी ज्यादा आपको सोचेंगे। कुछ दिनों के भीतर, वे आपको यह बताकर 'नेवीगेटिंग' शुरू करने में सक्षम होंगे कि वे पहले देखे गए लोगों के समान कार्यों के लिए क्या कोड दर्ज करेंगे।

मैंने एक महीने में इस तरह से डेवलपर के रूप में जो कुछ भी जाना है, उससे बहुत कुछ सीखा है, और इस तरह से कई अन्य नए डेवलपर्स को पढ़ाया है, जिनमें से एक कई महीनों के बाद स्टार्टअप पर मुख्य डेवलपर के रूप में मेरे लिए काम करने में सक्षम था। जब हमने पहली बार एक साथ काम करना शुरू किया था, तब उन्होंने कभी भी कोड की एक पंक्ति नहीं लिखी थी।


1
मुझे लगता है कि नौसिखिया प्रोग्रामर को पढ़ाने के लिए जोड़ी प्रोग्रामिंग एक बहुत अच्छा तरीका है, लेकिन मुझे लगता है कि हर समय जोड़ी प्रोग्रामिंग समस्याग्रस्त हो सकती है। मुझे लगता है कि नौसिखिए प्रोग्रामर को समस्याओं को हल करने और अपनी क्षमताओं में विश्वास बनाने का तरीका सीखने के लिए कुछ समय अकेले काम करने की आवश्यकता होती है।
हेलेहिन

हां, उन्हें जोड़ी प्रोग्रामिंग के साथ जायें और सरल कार्य दें - वास्तविक कार्य, जिस सॉफ्टवेयर पर वे काम कर रहे हैं, जिस भाषा में वे काम करना चाहते हैं, वास्तविक उपलब्धि के साथ। अपने सभी कामों की समीक्षा करें और उन्हें प्रगति दें।
थॉमस डब्ल्यू

2

उसे एक अच्छी विचारधारा दें (दृश्य स्टूडियो, एक्सप्रेस अभी भी अच्छा है)। उसे सामान्य 60% सिंटैक्स सिखाएं (उपज, लाइनक, एनम, गुण आदि को छोड़ दें, कक्षाएं, आभासी और ओवरराइड सिखाएं)। डिबगर (विशेषकर कॉलस्टैक) पर समय बिताएं। फिर उसे Google को "msdn functionanme" बताएं, जब भी उसे मदद की जरूरत हो और वह उसे जल्दी शुरू कर दे।

उसे यह भी सिखाएं कि वह कभी भी अपवाद न पकड़े और निगल ले। उसे बताएं कि उसे पुनर्विचार करना चाहिए या उसे लॉग इन करना चाहिए!

बोनस: उसे सिखाएँ कि कैसे जसन डेटा को क्रमबद्ध किया जाए ताकि वह आसानी से फ़ाइल में पढ़ / लिख सके। एक db ओवरकिल है और सीखने के लिए बहुत अधिक है और आप उसे कस्टम फ़ाइल प्रारूप लिखना नहीं चाहते हैं, हालांकि मैं स्वीकार्य स्ट्रिंग स्ट्रिंग को सहेजने / लोड करने के लिए प्रति पंक्ति प्रकार की फ़ाइल पास दे सकता हूं।


1

मैं जानता हूं कि बहुत से लोग उन भाषाओं के लिए भाषाओं और किताबों के बारे में बात कर रहे हैं। मैं अलग हूं।

प्रोग्रामिंग विश्लेषणात्मक रूप से सोचने के लिए सीखने के बारे में है। सबसे पहले और सबसे महत्वपूर्ण बात यह है कि व्यक्ति को यह सोचने में सक्षम होना चाहिए कि समस्या क्या है। आपको उनका मार्गदर्शन करना होगा ताकि उन्हें सही सोच की तकनीक मिल सके।

इसके बाद भाषा की बुनियादी बातें आती हैं। उन्हें पसंद की भाषा पर शुरू करें। कार्यक्रम के लिए एक समस्या दें।

इसके बाद पहली कटौती खत्म हो गई है उन्हें सीएस फंडामेंटल और डिज़ाइन पैटर्न करने के लिए।

अब उन्हें इन नई अवधारणाओं के साथ पहले की समस्या को दूर करने के लिए प्राप्त करें।


1

उसे बुनियादी बातों पर शुरू करें: चर, छोरों, जबकि छोरों, छोरों के लिए, उसे मूल बातें सिखाना, स्क्रीन पर मुद्रण करना, कुछ सरल गणित करना। तरीकों और बुनियादी ओओपी में स्थानांतरित करें, यहां क्लास बनाने के तरीके जैसी चीजें उसे दिखाती हैं कि सिर्फ क्यों नहीं।

भाषा कोई मायने नहीं रखती है, लेकिन आप जो कुछ जानते हैं उसे उठाएं और यह बहुत सार है (जावा, अजगर आदि ...) जिस तरह से उसे स्मृति प्रबंधन, संकेत आदि जैसी चीजों के बारे में चिंता करने की आवश्यकता नहीं है ... मूल बातें सिखाएं पुनरावृत्ति, हैंगो के टावरों या पुनरावर्ती निर्देशिकाओं की खोज।

प्रोग्राम करना सीखें रूबी प्रोग्रामिंग पर एक अच्छा मुफ्त संसाधन है। इसे मज़ेदार, आसान और मनोरंजक बनाएं।


1

उसे कुछ चुनौतियाँ दें और उससे यह सीखें कि समस्या को हल करने के लिए संसाधनों को कैसे खोजें।

यदि आप उसे सिखा सकते हैं कि उत्तर कैसे खोजना है और आत्मनिर्भर होना है, तो वह स्वाभाविक रूप से अच्छी तरह से प्रोग्राम करना सीख जाएगा। एक प्रोग्रामर के लिए महत्वपूर्ण सोच और संसाधन कुशलता दो प्रमुख कौशल हैं।

दिन के अंत में, जुनून / रुचि निश्चित रूप से एक महत्वपूर्ण कारक होने जा रही है कि वे इसे जल्दी से सीखने में कितना सफल होंगे। यदि उसके पास "बग" नहीं है, तो यह एक धीमी और / या दर्दनाक प्रक्रिया हो सकती है। यदि वह बग को पकड़ता है, तो वह अपने जीवन के समय के बाद, देर से कोडिंग, काम के घंटे बंद कर देगा।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.