प्रोग्रामर के रूप में काम कहाँ से शुरू करें? स्क्रैच से प्रोग्रामिंग सीखना - शुरुआती लोगों के लिए चरण-दर-चरण मार्गदर्शिका

शायद किसी कारण से आप अचानक प्रोग्रामर बनना चाहते थे। अच्छी खबर यह है कि एक बार जब आप सिस्टम को समझ लेते हैं, तो आप सीख सकते हैं कि साक्षात्कार में कैसे सफल होना है और नौकरी पर अपने पहले कुछ महीनों में कैसे टिके रहना है।

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

निःसंदेह, यह लेख विशेष रूप से मेरे बारे में बात करेगा निजी अनुभव, जिसने मुझे लक्सॉफ्ट जैसी शीर्ष कंपनियों के लिए भी साक्षात्कार प्राप्त करने की अनुमति दी।

मैं एक प्रोग्रामर कैसे बन गया

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

पहला कदम - बायोडाटा

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

वेतन नीति

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

शर्म और शर्म

पहला साक्षात्कार असफल रहा। वे सचमुच मुझ पर हँसे। पहले तकनीकी साक्षात्कार में, जहां मुझे कागज पर कुछ समस्याएं बताई गईं, कुछ ही समय में मेरा समाधान हो गया। किसी ने थिंकिंग इन जावा पुस्तक के लिए पिता जैसी अनुशंसा भी की।

पहली नौकरी

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

अपने कड़वे, लेकिन फिर भी अमूल्य अनुभव के आधार पर, मैं अनुशंसाओं की एक सूची दूंगा जो साथी साहसी लोगों को अपेक्षाकृत जल्दी प्रोग्रामर के रूप में नौकरी खोजने में मदद करेगी।

  1. सारांश।इसे ठीक से प्रारूपित किया जाना चाहिए और विशेष रूप से अंग्रेजी में लिखा जाना चाहिए। यदि आपके पास पर्याप्त अनुभव नहीं है, तो आप इसका आविष्कार कर सकते हैं (और करना भी चाहिए), लेकिन आपको अपने बायोडाटा में लिखे प्रत्येक शब्द के लिए जिम्मेदार होने के लिए तैयार रहना चाहिए। उदाहरण के लिए, यदि आपके पास जेएमएस (जावा संदेश सेवा) लिखा है, तो कम से कम आपको कम से कम एक ट्यूटोरियल से गुजरना चाहिए और जेएमएस के साथ खेलना चाहिए, कुछ उदाहरण बनाना चाहिए, भले ही यह "हैलो, दुनिया!" अब यह दिखाना अधिक सुविधाजनक होगा कि आपने वास्तव में "जेएमएस के साथ काम किया"।
  • प्रोग्रामिंग की एबीसी सीखें।यदि आप अभी भी स्ट्रट्स और स्प्रिंग जैसी कुछ जटिल प्रौद्योगिकियों के गहरे स्तरों पर "तैरने" का जोखिम उठा सकते हैं, तो बुनियादी प्रश्नों के गलत उत्तर कभी माफ नहीं किए जाएंगे। अगर मैं आपको रात में जगाऊं, तो आप ओओपी, इनहेरिटेंस, एनकैप्सुलेशन, पॉलीमोर्फिज्म और अन्य बुनियादी अवधारणाओं के बारे में बात करने में सक्षम होंगे, और उदाहरणों के साथ इसे समझाने में भी सक्षम होंगे।
  • अभ्यास।प्रोग्रामिंग के द्वारा ही आप प्रोग्राम करना सीख सकते हैं। यह दर्दनाक और अप्रिय है (यदि आप प्रोग्रामर नहीं हैं), लेकिन कोई दूसरा रास्ता नहीं है। साक्षात्कार की समस्याओं से डरना बंद करने का एकमात्र तरीका उन्हें घर पर स्वयं हल करना है।
  • किताबें पढ़ें और जावा पर ट्यूटोरियल लें केवल अंग्रेज़ी मेंबिल्कुल सभी प्रोग्रामिंग शब्दों को मूल भाषा, यानी अंग्रेजी में समझना आसान है। जावा पर रूसी भाषा में तकनीकी साहित्य पढ़ना अपना अनादर करना है। क्यों? क्योंकि "...टेबल मॉड्यूल" की तर्ज पर कुछ समझने के लिए कई मायनों में एक मध्यवर्ती विकल्प है, लेनदेन परिदृश्य और मॉडल के संबंध में एक समझौता विषय क्षेत्र“, आपको वास्तव में एक प्रतिभाशाली बनने की आवश्यकता है, जो कि आप होने की संभावना नहीं है।
  • अंततः अंग्रेजी सीखें!सबसे पहले, यह बोली जाने वाली अंग्रेजी से संबंधित है। गिनती करना कठिन है बड़ी राशिबुद्धिमान प्रोग्रामर, जिन्हें, जहां तक ​​मुझे याद है, एक ही कारण से अस्वीकार कर दिया गया था - बोली जाने वाली अंग्रेजी का असंतोषजनक स्तर। नहीं, यदि आप निश्चित रूप से किसी घरेलू कंपनी में प्रोग्रामर के रूप में काम करने जा रहे हैं, तो आपकी भाषा का स्तर कोई महत्वपूर्ण भूमिका नहीं निभाएगा। लेकिन अगर आप किसी अंतरराष्ट्रीय कंपनी में नौकरी पाना चाहते हैं तो भगवान ने खुद आपको भाषा सीखने का आदेश दिया है। आपका अंग्रेजी स्तर वेतन वृद्धि में सैकड़ों अतिरिक्त डॉलर का अनुवाद करेगा।
  • बाज़ार को जानें.चारों ओर रिक्तियों की तलाश करें, आवश्यकताओं को पढ़ें, अपने प्रोग्रामर दोस्तों से पूछें कि वे कितना कमाते हैं। ऐसी सेवाओं का उपयोग करें जो आपको आईटी बाज़ार की अधिक संपूर्ण तस्वीर प्राप्त करने की अनुमति देगी। आपको यह जानकर आश्चर्य होगा कि ऐसे प्रतिभाशाली प्रोग्रामरों की संख्या कितनी बड़ी है जो अपनी क्षमता से आधा कमाते हैं, सिर्फ अपने आलस्य और अपनी नाक को हवा में रखने की अनिच्छा के कारण।
  • सौदा।अपने वेतन को लेकर मोलभाव करने में कोई बुराई नहीं है। किसी विवाद में आपका तर्क या तो अच्छी अंग्रेजी हो सकता है या किसी अन्य कंपनी में नौकरी की पेशकश हो सकती है। अंतिम तर्क विशेष रूप से अच्छी तरह से काम करता है: "हां, लेकिन लक्सॉफ्ट मुझे $300 अधिक की पेशकश कर रहा है, मुझे आपकी शर्तों से सहमत क्यों होना चाहिए? शायद हमें कोई समझौता मिल जाए?” एक समय में, मैं कुछ बार अपने वेतन में अतिरिक्त सौ डॉलर का समझौता करने में कामयाब रहा, और एक साल के बाद, इस सौ डॉलर ने मुझे अचानक अतिरिक्त $1,800 की आय प्रदान की। आपको समझना होगा कि छोटी विदेशी आईटी कंपनियों के लिए भी अतिरिक्त सौ रुपये बाल्टी में एक बूंद के समान हैं।
  • अपने लिए एक गुरु खोजें.यह अच्छा है यदि आपके पास एक अधिक अनुभवी मित्र है जो सलाह के साथ मदद कर सकता है और यहां तक ​​कि सबसे बेवकूफी भरे सवालों का जवाब भी दे सकता है। उनके अनुभव और नैतिक समर्थन की बदौलत आप प्रोग्रामिंग में अपनी तुलना में तेजी से प्रगति करेंगे। यदि आपके पास कोई गुरु नहीं है, तो कुछ प्रोग्रामिंग पाठ्यक्रम लेना एक अच्छा विचार है जो न केवल एक प्रोग्रामर क्या करता है इसकी पूरी तस्वीर देगा, बल्कि आपको अधिक अनुभवी लोगों से मिलने की भी अनुमति देगा। कौन जानता है, शायद उनमें से कोई आपका गुरु बनना चाहेगा।
  • अपना प्रोजेक्ट प्रारंभ करें.भले ही यह सबसे खराब कोडिंग प्रथाओं का एक उदाहरण है और आप इसे कभी खत्म नहीं करते हैं, कम से कम आपके पास करने के लिए कुछ होगा जिससे आप प्रोग्रामिंग को समझना और नई तकनीकों को सीखना चाहेंगे। इसके अलावा, साक्षात्कार के दौरान आपके पास अंतरंग बातचीत के लिए एक अतिरिक्त विषय होगा।
  • गर्मियों में नौकरी की तलाश करें.सबसे पहले, जब हर कोई छुट्टी पर होता है, तो कंपनियों में कर्मचारियों की कमी होने की संभावना अधिक होती है और साक्षात्कार के लिए बुलाए जाने की संभावना अधिक होती है। दूसरे, चूंकि आपके प्रतिस्पर्धी-आवेदक भी छुट्टी पर हैं, इसलिए एचआर द्वारा फिर से आपकी ओर ध्यान दिए जाने की संभावना बढ़ जाती है।
  • कभी हार न मानना।भले ही आपको ऐसा लगे कि आप साक्षात्कार में असफल हो रहे हैं, फिर भी दृढ़ रहना और समस्या को हल करने का प्रयास करते रहना महत्वपूर्ण है, चाहे वह कितनी भी कठिन क्यों न लगे। कौन जानता है, शायद इसी क्षण आपके काम में परिश्रम की परीक्षा हो रही हो!
  • कंप्यूटर पर कार्य करने से बचें.किसी गैर-पेशेवर को तुरंत प्रोग्रामिंग की झंझट में डाल देने से ज्यादा तेजी से उसे समझने का कोई तरीका नहीं है। आपका कार्य सभी वार्तालापों का अनुवाद करने का प्रयास करना है उच्च स्तर, जहां सामान्य दृष्टिकोण और अवधारणाओं पर चर्चा की जाती है, लेकिन किसी विशेष समस्या को हल करने में विशिष्ट कार्यान्वयन नहीं। यदि आपको कागज और कलम दिया जाता है और समाधान लिखने के लिए कहा जाता है, तो इसे आरेखीय रूप से बनाने का अवसर मांगें। इस प्रकार, किसी विशिष्ट भाषा के वाक्य-विन्यास से दूर जाकर, आप न केवल खुद को कुछ कष्टप्रद त्रुटियों से बचाएंगे, बल्कि यह भी दिखाएंगे कि आप इतने विस्तार में गए बिना अमूर्त रूप से सोचने में सक्षम हैं।
  • बोलने वाले पहले व्यक्ति बनें.ऐसी स्थितियों से बचें जहां हवा में ठहराव हो, जिसके दौरान साक्षात्कारकर्ता के दिमाग में एक और कपटपूर्ण प्रश्न उठ रहा हो। जैसे ही कोई अड़चन हो, कुछ ऐसा बताना शुरू करें जो आप अच्छी तरह जानते हों। साक्षात्कारकर्ता पर अपना खेल थोपने का प्रयास करें।
  • सच बोलने का प्रयास करें.यदि आपने कभी पीएल/एसक्यूएल प्रक्रियाएं नहीं लिखी हैं, तो सीधे तौर पर ऐसा कहना बेहतर होगा। यह आपके लिए नुकसानदेह हो सकता है, लेकिन आप उस प्रश्न का उत्तर देकर अपने ही रास्ते से हटने से बच जाएंगे जिसके बारे में आपको कुछ भी समझ नहीं आता। एक अनुभवी साक्षात्कारकर्ता आपके ज्ञान की कमी को एक मील दूर से ही भांप लेगा।
  • छोटी कंपनियों से सावधान रहें.छोटी कंपनियों में छोटी टीमें होती हैं। टीम में जितने कम लोग होंगे, वे उतनी ही तेजी से आपका पता लगा लेंगे। आपका लक्ष्य एक बड़ा और अनाड़ी निगम है, जहाँ आप अपने लिए कुछ समय खरीद सकते हैं।
  • ड्रेस कोड का पालन करें.यदि आप किसी प्रोग्रामर पद के लिए साक्षात्कार के लिए स्मार्ट सूट पहनकर आते हैं, तो यह आपके शॉर्ट्स या बिना धागे वाले स्वेटर पहनने की तुलना में अधिक संदेह पैदा करेगा। यह भी एक अच्छा विचार होगा कि आप चश्मा लगाकर कहें, "मैं एक किताबी कीड़ा हूँ।"
  • निःसंदेह, कोई जानकार व्यक्ति यह बता सकता है कि उपरोक्त नुस्खा एक प्रोग्रामर से अधिक एक कोडर बनने का एक तरीका है, और वह कहीं न कहीं सही होगा। हालाँकि, बात यह है कि आपको "बैड कोडर वांटेड" शीर्षक वाली कोई रिक्ति कभी नहीं मिलेगी। सभी को प्रोग्रामर की जरूरत है। अधिमानतः वरिष्ठ. जिनके पास कॉर्पोरेट परियोजनाओं पर काम करने का पांच साल से अधिक का अनुभव है और जो कई प्रोग्रामिंग भाषाओं में समान रूप से पारंगत हैं, साथ ही डीबीएमएस की पूरी समझ रखते हैं, बैश स्क्रिप्ट, संग्रहीत प्रक्रियाएं लिख सकते हैं, लिनक्स, टीसीपी/आईपी में पारंगत हैं। , नेतृत्व गुण, और तनाव प्रतिरोध, संचार कौशल और कई अन्य कौशल हैं, "जिनके बिना यह असंभव है।"

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

मैंने प्रोग्रामर बनने के लिए पढ़ाई नहीं की, हालाँकि मैं हमेशा से प्रोग्रामर बनना चाहता था। सबसे पहले मैंने आम तौर पर कंप्यूटर हार्डवेयर से संबंधित विशेषज्ञता में प्रवेश किया, लेकिन यह पता चला कि यह बहुत दिलचस्प नहीं था, इसलिए मैंने ऑप्टोइलेक्ट्रॉनिक्स में स्थानांतरित कर दिया।

अध्ययन इमेज प्रोसेसिंग से संबंधित था: यह बिल्कुल भी प्रोग्रामिंग नहीं है, लेकिन फिर भी मैं जो चाहता था उसके करीब है। यह कंप्यूटर से सम्बंधित विशेषता है.

मेरे मन में हमेशा यह बात थी कि मैं एक प्रोग्रामर के रूप में काम करूंगा। आख़िर में वही हुआ.

मुझे इसमें एक नौकरी का विज्ञापन मिला

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

जैसा कि बाद में पता चला, कई आवेदक थे - डेढ़ सौ आवेदक। उन्हें चयन करने में काफी लंबा समय लगा। पहले हमें एक सामान्य बैठक में आमंत्रित किया गया, फिर हमने एक सैद्धांतिक परीक्षा उत्तीर्ण की और कई व्यावहारिक कार्य पूरे किए।

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

मैंने प्रोग्रामिंग पर केवल एक किताब पढ़ी है

आप कह सकते हैं कि मैं स्व-सिखाया गया हूं।

मुझे यकीन है कि प्रोग्रामिंग एक ऐसा क्षेत्र है जिसे आप विश्वविद्यालय में लंबे सैद्धांतिक व्याख्यान के बिना स्वयं समझ सकते हैं।

इससे पहले कि मैं गंभीरता से जावा में प्रोग्राम सीखना शुरू करूँ, मैंने प्रोग्रामिंग के बारे में केवल एक किताब पढ़ी। यह "21 दिनों में C++" कोर्स था।

मैं यह नहीं कहूंगा कि मुझे यह पसंद नहीं आया या सब कुछ बहुत जटिल और अनावश्यक लग रहा था, लेकिन फिर भी मैंने जावा पर फैसला किया। वैसे, अब काम पर मुझे न केवल जावा में, बल्कि "प्लस" में भी प्रोग्राम करना पड़ता है, इसलिए कोई बेकार ज्ञान नहीं है।

मैंने जावा क्यों चुना?

  • मेरी राय में, जावा शायद एकमात्र प्रोग्रामिंग भाषा है जिसे सीखने की शुरुआत से लेकर अंतिम उत्पाद प्राप्त करने तक ज्यादा समय नहीं लगता है। शायद मैं उस तरह का व्यक्ति हूं जो परिणाम को तुरंत "महसूस" करना चाहता है। शुद्ध सिद्धांत वास्तव में मुझे आकर्षित नहीं करता।
  • मेरे सामने एक विशिष्ट लक्ष्य था. मैं समझ गया था कि प्रोग्रामर के रूप में नौकरी पाना मेरे लिए बेहद मुश्किल होगा; भविष्य के साक्षात्कार में मुझे कम से कम कुछ दिखाना होगा और कहना होगा: "मेरे पास कोई कार्य अनुभव नहीं है, डिप्लोमा बिल्कुल वह नहीं है जो मुझे चाहिए, लेकिन मेरे पास यह है - देखो।” लेकिन सौभाग्य से मुझे इंटर्नशिप के जरिए नौकरी मिल गई।
  • अब ओएस के लिए एप्लिकेशन विकसित करने के लिए बड़ी संख्या में विभिन्न गाइड मौजूद हैं। तो यहाँ सब कुछ सचमुच मेरे लिए मेल खाता था: प्रशिक्षण के लिए पर्याप्त सामग्रियाँ थीं, और अपेक्षाकृत जल्दी आसानी से ठोस परिणाम प्राप्त करने की संभावना थी।

संक्षेप में, C++ में एक संक्षिप्त पाठ्यक्रम के बाद, मैंने शुरुआती लोगों के लिए कुछ प्रकार का जावा ट्यूटोरियल लिया। मुझे याद नहीं है कि इसे क्या कहा जाता था, मुझे केवल इतना याद है कि मैंने इसे बीच में पहुंचने से पहले ही पढ़ना बंद कर दिया था। मैं जितनी जल्दी हो सके "दूर जाना" चाहता था।

फिर मैंने शुरुआती लोगों के लिए बहुत सारी मार्गदर्शिकाएँ देखीं और मैं निश्चित रूप से कह सकता हूँ: उनके बीच कोई बुनियादी अंतर नहीं है। वे लगभग एक जैसे ही हैं. कुछ ढूंढने के लिए, आपको बस क्वेरी में "बुक फॉर जावा स्टार्टर" टाइप करना होगा और आगे बढ़ना होगा।

इस टेलीग्राम चैनल में मुझे अपने सवालों के कई जवाब मिले।

इंटरनेट पर कुछ रूसी भाषा के प्रोग्रामिंग स्रोत हैं। हालत से समझौता करो

हाँ, और एक और महत्वपूर्ण बात. आपको इस तथ्य को स्वीकार करना होगा कि नेटवर्क के रूसी-भाषा खंड में अंग्रेजी-भाषा स्रोतों की संख्या की तुलना में प्रोग्रामिंग पर काफी किताबें और संसाधन हैं।

बेशक, अच्छे स्तर पर अंग्रेजी के ज्ञान के बिना प्रोग्रामिंग में कोई रास्ता नहीं है। इसलिए जो लोग Google अनुवादक स्तर पर अंग्रेजी से परिचित हैं, उन्हें मैं केवल एक ही सलाह दे सकता हूं: पहले अपनी अंग्रेजी सुधारें। बाकी सब बाद में आता है.

बेशक, सब कुछ इतना दुखद नहीं है: रूसी में "Google डेवलपर टूल्स" है। लेकिन किसी भी मामले में, आपको यहीं से शुरुआत करने की ज़रूरत नहीं है।

मुझे पता है कि विभिन्न ऑनलाइन प्रोग्रामिंग पाठ्यक्रम हैं - सशुल्क और निःशुल्क - लेकिन यह पता चला कि मैं उनके बिना भी काम चला सकता था। जो एक बार फिर मेरे मूल तर्क के पक्ष में बोलता है कि प्रोग्रामिंग को किसी की मदद के बिना सीखा जा सकता है।

मैं "विफल" कहाँ से शुरू हुआ

एंड्रॉइड के लिए जावा के बारे में थोड़ा समझने के बाद, मैंने धीरे-धीरे विशिष्ट एप्लिकेशन उदाहरणों से शुरुआत की - सरल से अधिक जटिल तक। उस समय तक, मुझे पहले से ही पता था कि मैं अंततः किस प्रकार का एप्लिकेशन बनाना चाहता हूं।

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

शायद मेरे लिए सबसे कठिन काम था इसे ढूंढना अच्छा विषयएक पूर्ण परियोजना के लिए. मुझे नहीं पता कि यह कोई कमी है या नहीं, लेकिन मैं इस तरह से बना हूं कि अगर विषय अच्छा है, अगर मुझे विचार पसंद है और मैं इसे लेकर उत्साहित हूं, तो मुझे प्रेरणा के साथ कोई समस्या नहीं होगी। . प्रेरणा के साथ कोई समस्या नहीं है - कोई भी दुर्गम कठिनाइयाँ नहीं हैं।

कौन से संसाधन एक नौसिखिया की मदद कर सकते हैं?

  • stackoverflow.com.

वहां, 90% तक की संभावना के साथ, आप विकास में आपके सामने आने वाले प्रश्न का व्यापक उत्तर प्राप्त कर सकते हैं।

  • स्रोतों के साथ भंडार Github.com।

उन्होंने वास्तव में मुझे अन्य लोगों के उदाहरणों से सीखने में मदद की।

  • यूट्यूब

वहां कई स्क्रीनकास्ट हैं जो आपको किसी विशेष तकनीक को बहुत तेज़ी से समझने की अनुमति देते हैं।

मैंने एक महीने में अपना पहला एप्लिकेशन विकसित किया

संक्षेप में, मैंने सचमुच एक महीने में आवेदन किया। ज्ञान के सबसे उपयोगी स्रोत Developer.android.com और वही Stackoverflow.com थे। सबसे दिलचस्प बात यह है कि किसी एप्लिकेशन को अपलोड करने की नियमित प्रक्रिया गूगल प्लेपूरे दो महीने लग गए. हालाँकि, शायद, सब कुछ इतने लंबे समय तक चला क्योंकि विकास के बाद मेरा जुनून थोड़ा ठंडा हो गया। थोड़ी देर बाद, मैंने बिगिनिंग जावा ईई 7 पुस्तक पढ़ने के बाद एप्लिकेशन का एक वेब संस्करण विकसित किया।

मैं इस तथ्य के बारे में कुछ सामान्य वाक्यांशों के साथ अपनी कहानी समाप्त नहीं करना चाहूंगा कि "सब कुछ हमारे हाथ में है" और "आपको बस इसे चाहने की जरूरत है।" बेशक, हर कोई नहीं, और मैं समझता हूं कि कुछ भाग्य की बदौलत मुझे अभी भी एक प्रोग्रामर के रूप में नौकरी मिल गई: अगर मुझे वीके पर यह पोस्ट नहीं मिली होती तो क्या होता?

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

और फिर भी: आप स्वयं प्रोग्राम करना सीख सकते हैं। अब मैं यह निश्चित रूप से जानता हूं।

यह आलेख कोई कोडिंग ट्यूटोरियल नहीं है. और "कौन सी प्रोग्रामिंग भाषा चुनें" के बारे में कोई पोस्ट नहीं। यदि आप यह समझना चाहते हैं कि कोड की दुनिया के बारे में जानने में आपकी कितनी रुचि है, तो अधिक महत्वपूर्ण प्रश्न यह है: प्रोग्रामिंग क्या है? प्रोग्रामिंग अंदर से कैसी दिखती है? क्या मैं और प्रोग्रामिंग संगत हैं?

"तर्क, गणित नहीं" का सिद्धांत

नए प्रोग्रामरों की सबसे बड़ी ग़लतफ़हमियों में से एक यह है कि प्रोग्रामिंग गणित से भरी होती है। यदि आप सोचते हैं कि प्रोग्रामिंग से आपको त्रिकोणमिति, बीजगणित आदि का अपना स्कूली ज्ञान याद हो जाएगा, तो आप गलत हैं। प्रोग्रामिंग में इस प्रकार का गणित दुर्लभ है।

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

"गिरते तारे को पकड़ने" का सिद्धांत

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

प्रक्रियाओं के साथ काम करने में समस्या यह है कि यदि आप उनके परिणामों के साथ कुछ नहीं करते हैं, तो वे आसानी से विलीन हो जाती हैं। शाब्दिक रूप से कहें तो, वे "गुमनाम हो जाते हैं", कभी दोबारा नहीं बनाए जाते, बिल्कुल उन सितारों के समान जो आकाश में चमकते हैं और गायब हो जाते हैं। दूसरे शब्दों में, आपको "उन्हें पकड़ने" की ज़रूरत है।

यदि आप किसी प्रक्रिया के साथ कुछ बनाते हैं, तो आपको इसे हथियाना होगा या आप इसे खो देंगे। यह वह जगह है जहां चर चलन में आते हैं - एक प्रक्रिया के परिणामों को "कैप्चर" करने के तरीके के रूप में। यह सिद्धांत यह समझने में बहुत मदद करता है कि सीखने के शुरुआती चरणों में प्रोग्रामिंग क्या है। और यदि आप इसे पहले ही पकड़ लेते हैं, तो आपको यह बहुत उपयोगी लगेगा।

"शब्दकोश" सिद्धांत

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

लेकिन शायद सबसे शक्तिशाली प्रकारों में से एक हैश, या कुंजी-मूल्य जोड़ी है। हैश के कई नाम हैं. रूबी में यह "हैश" है। जावास्क्रिप्ट में इसे "ऑब्जेक्ट" कहा जाता है। शायद पायथन ने इसे एक बेहतर नाम दिया है: "शब्दकोश।" यदि आप थोड़ा सोचें, तो शब्दकोश उनके अर्थ बताने वाली कुंजियों (शब्दों) का एक समूह है।

लेकिन यह बात क्यों मायने रखती है? यह पता चला है कि डेटा संग्रहीत करने के लिए अक्सर ऐसी संरचना की आवश्यकता होती है। उदाहरण के लिए, आप किसी व्यक्ति के बारे में जानकारी इस प्रकार पैकेज कर सकते हैं:

("प्रथम_नाम" => "जोनाथन", "अंतिम_नाम" => "रिचर्ड्स", "राष्ट्रीयता" => "ब्रिटिश")

इसमें "first_name" (प्रथम नाम), "last_name" (अंतिम नाम), आदि कुंजी हैं। ये किसी व्यक्ति के गुण या गुण की तरह होते हैं। आप "हेयर_कलर" (बालों का रंग), "उम्र" (उम्र), या "लिंग" (लिंग) भी जोड़ सकते हैं। और इनमें से प्रत्येक कुंजी का एक अर्थ है। प्रोग्रामिंग के एक महत्वपूर्ण हिस्से में डेटा संरचनाओं के प्रारूपों को परिभाषित करना शामिल है। और कुंजी-मूल्य जोड़े आपके शस्त्रागार में सबसे मूल्यवान हथियार बन रहे हैं, इसलिए जितनी जल्दी हो सके यह समझना उपयोगी है कि वे कैसे काम करते हैं।

"मैत्रियोश्का" सिद्धांत

प्रोग्रामिंग उन ऑब्जेक्ट्स से भरी हुई है जो अन्य ऑब्जेक्ट्स के अंदर ऑब्जेक्ट्स के अंदर हैं। प्रोग्रामिंग करते समय, आप अक्सर खुद को डेटा की संरचना करने की कोशिश करते हुए पाते हैं, और अक्सर उन संरचनाओं में उनके भीतर अन्य संरचनाएं भी शामिल होती हैं।

आइए पिछले उदाहरण में "भाई-बहन" गुण जोड़ें:

("प्रथम_नाम" => "जोनाथन", "अंतिम_नाम" => "रिचर्ड्स", "राष्ट्रीयता" => "ब्रिटिश", "भाई-बहन" => ( "भाई" => , "बहनें" => ["फियोना", "मैरी"] ) )

आप इस सिद्धांत को अपनी संपूर्ण प्रोग्रामिंग में देखेंगे। HTML में, कुछ तत्वों में अन्य तत्व शामिल होते हैं:

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

"कुत्ता, बिल्ली और मछली" सिद्धांत

(या कारण और प्रभाव का सिद्धांत)

कल्पना कीजिए कि आपके पास एक कमरा है। इस कमरे में एक बिल्ली और एक कटोरे में मछली है। मछली हमेशा की तरह व्यवहार करती है। एक निश्चित समय पर, 2 चीज़ें घटित होती हैं: कुत्ता कमरे में प्रवेश करता है, और बिल्ली कमरे से बाहर चली जाती है। उसी समय, मछली गाना शुरू कर देती है। प्रश्न: मछली ने गाना क्यों गाया?

विचार करने की कई संभावनाएं हैं. हम मान सकते हैं कि एक कुत्ते के घुसने के कारण ऐसा हुआ। और हम यह मान सकते हैं कि इसका कारण यह है कि बिल्ली बाहर आ गई। या शायद इसका कारण दोनों घटनाओं का मेल है. शायद दोनों घटनाओं का इससे कोई लेना-देना नहीं है. लेकिन सच तो यह है कि 18:17 वह समय है जब एक मछली डायन में बदल जाती है। शायद सभी मछलियाँ गाती हों। इनमें से कुछ विकल्प सत्य हो सकते हैं.

एक प्रोग्रामर के लिए वास्तव में जो महत्वपूर्ण है वह परिवर्तन के कारणों को अलग करने में सक्षम होना है। जब तक आप कोड करेंगे, आपको इस तरह की स्थितियों का सामना करना पड़ेगा। ऐसी स्थितियों में, हम खुद से पूछना चाह सकते हैं: क्या हम बिल्ली के बाहर आए बिना कुत्ते के आने का अनुकरण कर सकते हैं (इससे बहुत कुछ स्पष्ट हो सकता है); क्या हम कुत्ते के प्रवेश के बिना बिल्ली के चले जाने का अनुकरण कर सकते हैं; क्या हम पर्यावरण को पूरी तरह से दोहरा सकते हैं (उदाहरण के लिए समय 6:17 बजे) यह देखने के लिए कि क्या यह कुत्तों और बिल्लियों से स्वतंत्र होकर मछली के गायन को प्रभावित करता है? और इसी तरह। परिवर्तन के कारणों को निर्धारित करने के लिए एक पद्धति का उपयोग करना महत्वपूर्ण है। जब तक आप कोड करते रहेंगे यह क्षमता आपकी बार-बार मदद करेगी।

सार, या "पिज्जा" सिद्धांत

यह सबसे पेचीदा सिद्धांतों में से एक है. एक पिज़्ज़ेरिया की कल्पना करो. शेफ हर दिन अलग-अलग टॉपिंग के साथ पिज्जा तैयार करते हैं। प्रत्येक पिज्जा एक निश्चित क्रम में तैयार किया जाता है: पहले आप आटा तैयार करते हैं, फिर आप इसे छोड़ देते हैं, फिर आप इसे पैन में डालते हैं, टमाटर सॉस, टॉपिंग, पनीर डालते हैं और अंत में इसे बेक करते हैं।

लेकिन स्वाभाविक रूप से, शेफ प्रत्येक पिज्जा को यहां वर्णित क्रम में तैयार नहीं करता है। इसमें वर्षों लगेंगे. इसके बजाय, वह सब कुछ पहले से तैयार करता है, और जब नीपोलिटन की बात आती है, तो उसे बस आधार लेना है (जो पहले से ही बना हुआ है), टमाटर सॉस, एंकोवीज़ और पनीर जोड़ें, और फिर ओवन में सेंकना करें।

यहां समझने वाली महत्वपूर्ण बात यह है कि रसोइया को केवल प्रत्येक विशिष्ट पिज्जा के लिए सामग्री जानने की जरूरत है, लेकिन अन्यथा सभी पिज्जा एक-दूसरे के समान होते हैं। प्रोग्रामिंग बहुत समान दिखती है, आप इसे अधिक विशिष्ट डेटा (टॉपिंग्स) से अलग करते हुए अधिक सामान्य डेटा (जैसे पिज्जा की परत) को संग्रहीत करने के लिए "अमूर्त" का उपयोग करते हैं।

आइए पिज्जा बनाने को कोड में बदल दें। सबसे पहले आइए इसे गलत करना शुरू करें। आइये एक विधि बनाते हैं make_a_napoletana_pizza (नेपोलिटाना पिज़्ज़ा बनाएं):

एक_नेपोलेटाना_पिज़्ज़ा बनाओ

इसके 5 चरण होंगे (आधार बनाएं, टमाटर सॉस डालें, एंकोवी डालें, पनीर डालें, बेक करें):

आधार बनाएं, टमाटर की चटनी डालें, एन्कोवी डालें, पनीर डालें, बेक करें

महान। लेकिन अगर हम सलामी पिज़्ज़ा बनाना चाहें तो क्या होगा? हमें एक पूरी तरह से नई विधि मेक_ए_सलामी_पिज़्ज़ा (सलामी पिज़्ज़ा बनाएं) लिखने के लिए मजबूर किया जाएगा, जिसमें मौजूदा विधि के साथ बहुत कुछ समान होगा, सिवाय इसके कि इसमें एंकोवीज़ के बजाय सलामी जोड़ दी जाएगी। ये कुछ महंगा है. प्रोग्रामर का दृष्टिकोण पिज़्ज़ा बनाने की तकनीक के सामान्य भागों को "सार" करना और विभिन्न, विशिष्ट सामग्रियों का हिसाब-किताब करना है। हम इसे एक "तर्क" के साथ कर सकते हैं जो विधि को "पारित" किया जाता है।

इसका यही मतलब है. आइए कल्पना करें कि हमारी मेक_ए_पिज़्ज़ा पद्धति को "टॉपिंग्स" तर्क के साथ कहा जाता है। विधि कुछ इस तरह दिखेगी:

मेक_ए_पिज़्ज़ा(टॉपिंग्स)

और यह इस तरह काम करेगा:

आधार बनाएं, टमाटर की चटनी डालें, टॉपिंग डालें, पनीर डालें, बेक करें

पंक्ति 3 में हम पहले परिभाषित टॉपिंग लेते हैं और उन्हें पिज़्ज़ा में मिलाते हैं।

अब जब हमने पिज़्ज़ा बनाने की एक सामान्य विधि परिभाषित कर ली है, तो हम बस इसे कॉल कर सकते हैं और अपनी इच्छित सामग्री निर्दिष्ट कर सकते हैं। सब कुछ अपने आप होता है. दूसरे शब्दों में, हम मेक_पिज्जा (सलामी) कहते हैं, और जब विधि चलती है, तो सलामी टॉपिंग बन जाएगी और विधि तीसरी पंक्ति तक पहुंचने पर पिज्जा में जोड़ दी जाएगी। बस टॉपिंग बदलकर, आप एक विधि का उपयोग करके 2 अलग-अलग पिज्जा बना सकते हैं। यह उतना ही किफायती है जितना जब वेट्रेस ऑर्डर फॉर्म पर बस "1 x सलामी, 1 x शाकाहारी" लिखती है और रसोइया को वह सब कुछ पता होता है जो उसे चाहिए। प्रोग्रामिंग में इसे "अब्स्ट्रैक्शन" कहा जाता है।

तो आपके पास यह है: सात सिद्धांत जो आम तौर पर प्रोग्रामिंग के पहले 3 वर्षों में सीखे जाते हैं और जो कोडिंग की कला को समझने में महत्वपूर्ण योगदान देते हैं। अगर आप अपनी यात्रा शुरू कर रहे हैं तो ये सिद्धांत आपकी भी मदद कर सकते हैं।

इरीना डेविडोवा


पढ़ने का समय: 13 मिनट

ए ए

हर कोई अपने विशेष कारण से "प्रोग्रामर" का पेशा चुनता है। एक ने बस अपनी विशेषता बदलने का फैसला किया, दूसरे को दूसरा पेशा सीखने के लिए मजबूर किया गया, तीसरा कोड के बिना खुद को नहीं समझता, और कोई केवल जिज्ञासा से पेशे में चला जाता है।

किसी न किसी तरह, हर कोई शून्य से शुरुआत करता है। और इससे पहले कि आप शून्य से शुरुआत करें, अपने आप से पूछें, क्या आपको वास्तव में इस पेशे की आवश्यकता है?

एक प्रोग्रामर के कार्य का सार - मुख्य विशेषज्ञता, कार्य के पक्ष और विपक्ष

एक प्रोग्रामर के काम का सार विशेषज्ञता और कंपनी पर निर्भर करता है।

हालाँकि, कभी-कभी एक प्रोग्रामर "स्वीडिश, रीपर और ट्रम्पेट प्लेयर" दोनों होता है। लेकिन यह, एक नियम के रूप में, छोटी कंपनियों में होता है जिनके मालिक विशेषज्ञों पर बचत करते हैं।

मुख्य श्रेणियाँ जिनमें सभी प्रोग्रामर को उनकी गतिविधियों के अनुसार मोटे तौर पर विभाजित किया जा सकता है:

  • अनुप्रयोग विशेषज्ञ. कार्य: गेम, संपादकों, लेखांकन/कार्यक्रमों, त्वरित संदेशवाहकों आदि के लिए सॉफ़्टवेयर विकास; ऑडियो/वीडियो निगरानी प्रणाली, अलार्म सिस्टम आदि के लिए सॉफ्टवेयर विकास; किसी की विशिष्ट आवश्यकताओं को पूरा करने के लिए कार्यक्रमों को अपनाना।
  • सिस्टम विशेषज्ञ. कार्य: ऑपरेटिंग सिस्टम विकसित करना, डेटाबेस के लिए इंटरफेस बनाना, कंप्यूटर सिस्टम का प्रबंधन करना, नेटवर्क के साथ काम करना, बनाए गए सिस्टम के संचालन की निगरानी करना आदि। पेशे की दुर्लभता और विशिष्टता के कारण ये विशेषज्ञ अपने क्षेत्र में किसी और की तुलना में अधिक कमाते हैं।
  • वेब विशेषज्ञ. कार्य: इंटरनेट के साथ काम करना, वेबसाइट और वेब पेज बनाना, वेब इंटरफेस विकसित करना।

पेशे के फायदों में निम्नलिखित फायदे शामिल हैं:

  1. बहुत अच्छा वेतन.
  2. अच्छे विशेषज्ञों की उच्च मांग.
  3. बिना शिक्षा के प्रतिष्ठित नौकरी पाने का अवसर।
  4. घर बैठे सोफे पर बैठकर दूर से पैसा कमाने का अवसर।
  5. विदेशी कंपनियों के लिए दूर से काम करने का अवसर।
  6. रचनात्मक पेशा (हालाँकि, रचनात्मकता अक्सर ग्राहक की इच्छा पर निर्भर करती है)।
  7. आरामदायक स्थितियाँ जो बड़ी कंपनियाँ अपने विशेषज्ञों को प्रदान करती हैं (मुफ़्त पेय/बन्स, मनोरंजन और खेल के लिए विशेष स्थान, आदि)।
  8. "विकल्प" प्राप्त करने की संभावना. यानी कंपनी में शेयरों का एक ब्लॉक. सच है, कंपनी में एक निश्चित अवधि तक सेवा देने के बाद ही।
  9. अपने क्षितिज का विस्तार करना. जैसे-जैसे आप अपने पेशे में विकसित होते हैं, आपको जीवन के विभिन्न क्षेत्रों से परिचित होना पड़ता है और कार्यालय के काम और लेखांकन आदि से लेकर विभिन्न प्रणालियों में तल्लीन होना पड़ता है।

विपक्ष:

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

वीडियो: प्रोग्रामर कैसे बनें?

एक प्रोग्रामर के रूप में काम करने के लिए आवश्यक व्यक्तिगत और व्यावसायिक गुण, पेशेवर कौशल और क्षमताएं - आपको क्या जानने और करने में सक्षम होने की आवश्यकता है?

एक अच्छे प्रोग्रामर के मुख्य गुण

एक अच्छे प्रोग्रामर को...

  1. अपने काम से प्यार करो. और सिर्फ प्यार करना ही नहीं - उससे परेशान होना भी।
  2. शुरुआत से सीखना और सिखाना पसंद है।
  3. बहुत मेहनती, मेहनती और धैर्यवान बनें।
  4. निरंतर नियमित कार्य के लिए तैयार रहें।
  5. एक टीम में काम करने में सक्षम हो.

भावी प्रोग्रामर को किस ज्ञान की आवश्यकता है?

आपको पढ़ाई से शुरुआत करनी चाहिए...

  • अंग्रेजी में।
  • कंप्यूटर उपकरण और सभी प्रक्रियाओं की भौतिकी।
  • प्रोग्रामिंग भाषा।
  • सॉफ्टवेयर विकास पद्धति.
  • सॉफ्टवेयर परीक्षण पद्धति.
  • संस्करण नियंत्रण प्रणाली.

प्रोग्रामिंग भाषा - किस भाषा से शुरुआत करें?

तुम्हें भी पढ़ना पड़ेगा...

  • जावा।पायथन से अधिक लोकप्रिय और शुरुआत करने वालों के लिए एक अच्छा विकल्प। लेकिन Python से भी अधिक जटिल।
  • पीएचपी.वेब के लिए डिज़ाइन किया गया है, लेकिन किसी भी शुरुआती के लिए उपयोगी होगा।
  • सी और सी#.बहुत जटिल भाषाएँ, आप उन्हें बाद के लिए छोड़ सकते हैं।
  • माणिक।दूसरी भाषा के लिए एक अच्छा विकल्प.
  • Django.वह आपको सही ढंग से प्रोग्राम करना सिखाएगा। जटिलता में पाइथॉन के समान।

बहुत कुछ चुनी हुई दिशा पर निर्भर करता है।

उदाहरण के लिए…

  1. एक वेब प्रोग्रामर को HTML, CSS और JavaScript के ज्ञान से लाभ होगा।
  2. डेस्कटॉप प्रोग्रामर के लिए - एपीआई और फ्रेमवर्क।
  3. मोबाइल एप्लिकेशन डेवलपर के लिए - एंड्रॉइड, आईओएस या विंडोज फोन।

शुरुआत से प्रोग्रामर बनने के लिए कहाँ अध्ययन करें - रूस में शैक्षणिक संस्थान, पाठ्यक्रम, दूरस्थ शिक्षा, ऑनलाइन शिक्षण?

यदि आपके पास ऐसे दोस्त नहीं हैं जो आपको शुरू से ही प्रोग्रामर का पेशा सिखा सकें, तो आपके पास प्रशिक्षण के कई विकल्प हैं:

  • स्व-शिक्षा। प्रोग्रामिंग का सबसे कठिन मार्ग, जो साइटों, एप्लिकेशन, पुस्तकों आदि का अध्ययन करने से होकर गुजरता है।
  • विश्वविद्यालय। यदि आपने अभी-अभी स्कूल से स्नातक किया है और एक प्रोग्रामर के रूप में एक प्रतिष्ठित पेशा पाने का सपना देखते हैं, तो उपयुक्त संकाय में दाखिला लें। आप अभी भी स्व-शिक्षा के माध्यम से बुनियादी ज्ञान प्राप्त करेंगे, लेकिन "क्रस्ट" आपको अपने पोषित लक्ष्य के करीब तेजी से पहुंचने में मदद करेगा। प्रशिक्षण कार्यक्रमों का पहले से अध्ययन करके तकनीकी विश्वविद्यालय चुनें।
  • व्यक्तिगत शिक्षक . यदि आप प्रोग्रामर्स के बीच एक सलाहकार ढूंढ सकें, तो स्व-शिक्षा तेज़ और अधिक प्रभावी होगी। ऑनलाइन मंचों, आईटी पार्टियों, विषयगत सम्मेलनों आदि में सलाहकारों की तलाश करें।
  • पाठ्यक्रम.वे आपको यह या वह प्रोग्रामिंग भाषा सरल पाठ्यक्रमों में सिखा सकते हैं जो छोटे शहरों में भी पाई जा सकती हैं। उदाहरण के लिए, " शैक्षिक आईटी पोर्टल GeekBrains", « MSTU बाउमन में विशेषज्ञ"।, « कंप्यूटर अकादमी चरण", एमएएसपीसी.

आप एक प्रोग्रामर के रूप में उच्च शिक्षा प्राप्त कर सकते हैं…

  1. एमईपीएचआई.
  2. रूसी प्लेखानोव अर्थशास्त्र विश्वविद्यालय।
  3. मॉस्को स्टेट यूनिवर्सिटी ऑफ़ सिविल इंजीनियरिंग।
  4. एमएसटीयू बाउमन।
  5. राज्य प्रबंधन विश्वविद्यालय.

वीडियो: शुरुआती प्रोग्रामर द्वारा की जाने वाली 7 गलतियाँ

प्रोग्रामर बनना सीखने के लिए उपयोगी ऑनलाइन संसाधन और पुस्तकें

  • habrahabr.ru (आईटी विषयों पर लेख, विभिन्न विषयों पर जानकारी)। यह संसाधन प्रत्येक प्रोग्रामर को ज्ञात है।
  • rsdn.org (किताबें, समसामयिक मुद्दे, उपयोगी मंच, ज्ञान की कमी को पूरा करना, रूसी में सामग्री)।
  • sql.ru (उत्कृष्ट सुविधाजनक मंच, उपयोगी साहित्य और यहां तक ​​कि नौकरी की पेशकश भी)।
  • thereregister.co.uk (आईटी क्षेत्र से समाचार)।
  • opennet.ru (समाचार, उपयोगी लेख, मंच, आदि)। पेशेवरों के लिए एक संसाधन.
  • ड्राइवर.आरयू (ड्राइवर लाइब्रेरी)। शुरुआती लोगों के लिए उपयोगी साइट.

सीखने के संसाधन:

  1. ocw.mit.edu/courses (विभिन्न विषयों पर 2000 से अधिक पाठ्यक्रम)।
  2. coursera.org (200 से अधिक पाठ्यक्रम, निःशुल्क)।
  3. thecodeplayer.com (शुरुआती लोगों के लिए चरण-दर-चरण मार्गदर्शिकाएँ)।
  4. eloquentjavascript.net (जावा स्क्रिप्ट से परिचय के लिए संसाधन)।
  5. Rubykoans.com (रूबी सीखने वाले किसी भी व्यक्ति के लिए)।
  6. learncodethehardway.org (पायथन, रूबी, सी, आदि सीखें)।
  7. udemy.com (सशुल्क और निःशुल्क पाठ्यक्रम)।
  8. Teamtreehouse.com (600 से अधिक पाठ)।
  9. webref.ru/layout/learn-html-css (HTML और CSS में महारत हासिल करने के लिए)।
  10. getbootstrap.com (बूटस्ट्रैप की विशेषताओं की खोज)।
  11. learn.javascript.ru (लर्निंग फ्रंटएंड और जावास्क्रिप्ट)।
  12. Backbonejs.org (फ्रंट-एंड डेवलपर्स के लिए)।
  13. itman.in/uroki-django (Django सीखने के लिए)।

शुरुआती लोगों की मदद के लिए निःशुल्क शिक्षण साइटें:

  • ru.hexlet.io (सी और पीएचपी, जावास्क्रिप्ट और बैश में 8 निःशुल्क पाठ्यक्रम)।
  • htmlacademy.ru (लेआउट डिजाइनरों के लिए 18 निःशुल्क पाठ्यक्रम)।
  • Codecademy.com (भाषाओं, उपकरणों आदि पर लोकप्रिय पाठ्यक्रम)।
  • Codeschool.com (HTML/CSS और जावास्क्रिप्ट, रूबी और पायथन, iOS और Git, आदि पर 60 से अधिक पाठ्यक्रम (13 निःशुल्क)।
  • checkio.org (पायथन और जावास्क्रिप्ट सीखने के लिए)।
  • codingame.com (वीडियो गेम, 23 प्रोग्रामिंग भाषाओं के माध्यम से सीखना)।
  • Codecombat.com (जावास्क्रिप्ट, पायथन आदि सीखें)। एक शैक्षिक खेल जो उन लोगों के लिए भी उपलब्ध है जो अभी तक अंग्रेजी नहीं बोलते हैं।
  • Codehunt.com (कोड में त्रुटियां ढूंढने के लिए प्रशिक्षण)।
  • Codefights.com (टूर्नामेंट के माध्यम से एक प्रशिक्षण मंच जिस पर आप एक अच्छी आईटी कंपनी में साक्षात्कार प्राप्त कर सकते हैं)।
  • bloc.io/ruby-warrior# (रूबी और कला/बुद्धिमत्ता सीखना)।
  • theaigames.com (प्रोग्रामिंग कौशल का विकास - एक प्रोग्रामर के लिए एक रोमांचक ऑनलाइन गेमिंग सिम्युलेटर)।
  • Codewars.com (उन लोगों के लिए शैक्षिक इंटरैक्टिव कार्यों का एक संग्रह जिनके पास न्यूनतम ज्ञान है)।

प्रोग्रामिंग की मूल बातें स्वयं सीखने में आमतौर पर छह से 12 महीने लग जाते हैं।

प्रोग्रामर के रूप में जल्दी से नौकरी कैसे ढूंढें और पैसा कमाना कैसे शुरू करें - अनुभवी लोगों की सलाह

स्वाभाविक रूप से, आप कार्य अनुभव के बिना किसी सामान्य कंपनी में नौकरी नहीं पा सकेंगे।

इसीलिए…

  1. किताबें पढ़ें, वेबसाइटों का अध्ययन करें और खुद को शिक्षित करें, लेकिन अब कोड की अपनी पहली पंक्तियां लिखना शुरू करें।
  2. आपके द्वारा कवर की गई सामग्री के आधार पर अपने स्वयं के कार्य बनाएं और जटिल करें।
  3. अपनी पहली परियोजनाओं की तलाश करें, यहां तक ​​कि "मज़ेदार पैसे" के लिए भी, इसे अपने "रेज़्यूमे" में लिखें।
  4. रूसी-भाषा फ्रीलांस एक्सचेंजों (आरयू) और अंग्रेजी-भाषा एक्सचेंजों (upwork.com) पर भी काम की तलाश करें - वहां इसे पाने की अधिक संभावनाएं हैं।
  5. छोटी परियोजनाओं से शुरुआत करें जिन्हें आप संभाल सकते हैं।
  6. ओपन सोर्स विकल्प को न चूकें (ऐसी परियोजनाओं में हमेशा लोगों की कमी होती है)।
  7. अपने परिचित प्रोग्रामर को "एक अच्छे पैसे में" (या मुफ़्त में, अनुभव के लिए) मदद करें। उन्हें आपको सरल कार्य देने दें.

  • लिखना सुनिश्चित करें: आपका कार्य अनुभव, आपके द्वारा बोली जाने वाली भाषाओं और तकनीकों की सूची, शिक्षा और संपर्क।
  • हम अपने बायोडाटा में अपने गुणों और प्रतिभाओं की पूरी सूची नहीं डालते हैं। भले ही आप बटन अकॉर्डियन को कुशलता से बजाते हों, आपको इसके बारे में अपने बायोडाटा में नहीं लिखना चाहिए।
  • अपना बायोडाटा रचनात्मक लेकिन प्रासंगिक बनाने के लिए डिज़ाइन करें।
  • आपको "आपके लक्ष्य और महत्वाकांक्षाएं" या "मैं खुद को 5 वर्षों में कहां देखता हूं" जैसी चीजें नहीं भरनी चाहिए। आपने पहले क्या किया और अब क्या करना चाहते हैं, यह लिखना ही काफी है।
  • उन भाषाओं और प्रौद्योगिकियों के बारे में न लिखें जिन्हें आप केवल नाम से जानते हैं। आपको अपने बायोडाटा में वही लिखना चाहिए जिसमें आप पानी में मछली की तरह तैरते हों। बाकी हर चीज़ के लिए एक जादुई मुहावरा है - "थोड़ा अनुभव था।"
  • यदि आप डेल्फ़ी में कुशल हैं, तो यह उल्लेख करना न भूलें कि आप C#, Jave या अन्य भाषा भी जानते हैं, क्योंकि किसी को भी वास्तव में "डेल्फ़ी प्रोग्रामर" की आवश्यकता नहीं है (डेल्फ़ी वह मूल बातें है जिससे हर स्नातक परिचित है)।
  • उस काम का जिक्र न करें जो आपकी विशेषज्ञता में नहीं है। इसमें किसी की दिलचस्पी नहीं है. इसके अलावा, किसी को इसकी परवाह नहीं है कि आपके पास ड्राइविंग लाइसेंस है या कार। आपको कूरियर की नौकरी नहीं मिलेगी.

प्रोग्रामर कैरियर की संभावनाएं और प्रोग्रामर का वेतन

देश के प्रमुख शहरों में एक प्रोग्रामर का औसत वेतन है: 50,000 से 200,000 रूबल तक.

समग्र रूप से रूस के लिए - 35 हजार से 120000 तक.

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

एक प्रशिक्षु से आईटी विभाग के प्रमुख तक का रास्ता इतना लंबा नहीं है, और शीर्ष स्तर पर वेतन 4,000 डॉलर मासिक तक पहुंच सकता है। ठीक है, तो आप एक बड़े प्रोजेक्ट (लगभग - सॉफ्टवेयर विकास) के नेतृत्व में जा सकते हैं, और यहां वेतन पहले से ही $5,000 से अधिक है।

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

लेकिन, इस पेशे को चुनने से पहले, आपको यह स्पष्ट रूप से समझना होगा कि इस कठिन क्षेत्र में सफलता प्राप्त करने के लिए कहां से शुरुआत करें।

जिस किसी के पास बुनियादी कौशल, ज्ञान और बड़ी इच्छा है वह प्रोग्रामर बन सकता है। इसके अलावा, आपको यह तय करना होगा कि आप प्रोग्रामिंग की किस दिशा में सबसे अधिक काम करना चाहेंगे। इस मामले में, तीन मुख्य दिशाएँ हैं।

1. वेब प्रोग्रामर सबसे सरल कार्य हैं। इसमें शामिल हैं:

  • लेआउट डिज़ाइनर टेम्पलेट बना रहा है (वेबसाइट डिज़ाइन);
  • सर्वर प्रोग्रामर एक वेबसाइट स्क्रिप्ट बना रहा है।

2. सॉफ्टवेयर प्रोग्रामर (जटिलता का मध्यम स्तर) में विभाजित हैं:

  • सॉफ़्टवेयर डेवलपर;
  • सिस्टम प्रोग्राम डेवलपर.

3. पीसी, मोबाइल फोन, कंसोल के लिए गेम विकसित करने वाले प्रोग्रामर - काम का सबसे कठिन क्षेत्र।

आपको कितने समय तक अध्ययन करने की आवश्यकता है?

यह सब सैद्धांतिक ज्ञान और व्यावहारिक कौशल प्राप्त करने की इच्छा और तीव्रता पर निर्भर करता है। हालाँकि, एक अलिखित नियम है कि सब कुछ एक वर्ष में सीखा जा सकता है। मुख्य बात सीखने की इच्छा रखना और लगातार नए कौशल हासिल करना है। जिस उम्र में कोई इस पेशे में महारत हासिल कर सकता है, वहां दृढ़ संकल्प का भी सवाल है। 18-20 वर्ष की आयु में कुछ लोगों के पास कोई इच्छा और महत्वपूर्ण ऊर्जा नहीं होती है, जबकि अन्य, सेवानिवृत्ति की आयु होने के कारण, अपने लिए निर्धारित लक्ष्यों को आसानी से प्राप्त कर लेते हैं।

किस ज्ञान और गुण की आवश्यकता है?

जो युवा स्कूली उम्र में अपने जीवन को प्रोग्रामिंग से जोड़ना चाहते हैं, उन्हें यह समझना चाहिए कि अपने डेस्क पर बैठकर उन्हें जो शिक्षा मिलती है, वह इस पेशे में महारत हासिल करने के उनके कार्य को काफी सुविधाजनक बनाएगी।

स्कूली पाठ्यक्रम से निम्नलिखित विषयों पर विशेष ध्यान दिया जाना चाहिए:

  1. उच्च गणित. सामान्य गणना करने की क्षमता के अलावा, यह उन कुछ स्कूली विषयों में से एक है जो आपको सोचने, विश्लेषण करने, अमूर्त सोच विकसित करने और व्यक्तिगत निष्कर्ष निकालने के लिए मजबूर करता है। ये वे कौशल हैं जो एक व्यक्ति के पास होने चाहिए;
  2. अंग्रेजी भाषा। इस मामले में, कम से कम "शब्दकोश के साथ मध्यवर्ती स्तर" की आवश्यकता होती है। आदर्श रूप से, इसका मतलब तकनीकी भाषा का अच्छा ज्ञान और विशेष पाठों का अनुवाद करने की क्षमता है। आख़िरकार, अधिकांश भाग के लिए, आपको दस्तावेज़ीकरण का अध्ययन और उपयोग करना होगा, विभिन्न सॉफ़्टवेयर खरीदना होगा, और अंग्रेजी भाषा पर आश्वस्त पकड़ वाले विदेशी समकक्षों के साथ बातचीत भी करनी होगी;
  3. कंप्यूटर विज्ञान (प्रोग्रामिंग सिद्धांत)। डेटा प्रकारों और डेटाबेस, बुनियादी ऑपरेटरों और प्रोग्रामिंग भाषाओं (स्कूल पाठ्यक्रम में ये पास्कल और सी++ हैं) के साथ काम करने की मूल बातें, साथ ही ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग की मूल बातें समझना आवश्यक है;
  4. भौतिक विज्ञान। बहुत से लोग मानते हैं कि प्रोग्रामर के पेशे में महारत हासिल करने के लिए इस विषय का ज्ञान बिल्कुल बेकार है। लेकिन यह राय गलत कही जा सकती है. आख़िरकार, कार्य का यह क्षेत्र भौतिकी से निकटता से संबंधित हो सकता है। उदाहरण के लिए, किसी अंतरिक्ष या समुद्री जहाज का सिम्युलेटर बनाना, साथ ही ऐसे कंप्यूटर गेम बनाना जो यथासंभव वास्तविकता के करीब हों। प्रकाश की घटना और अपवर्तन, विभिन्न मौसम स्थितियों में कार की वास्तविक गति और बहाव का निर्माण, पानी, धुआं या आग का यथार्थवादी प्रदर्शन आदि के बारे में ज्ञान आवश्यक हो सकता है।

कार्य के लिए आवश्यक गुण:

  1. असाधारण और तार्किक सोच का कब्ज़ा;
  2. गणितीय सोच;
  3. समय का प्रबंधन करने की क्षमता (निरंतर स्व-सीखने के बारे में नहीं भूलना);
  4. एक बड़े कार्य को उपकार्यों में विभाजित करने की क्षमता;
  5. सही लक्ष्य चुनने और उसे प्राप्त करने की इच्छा रखने की क्षमता;
  6. एक बड़ी टीम में काम करने की क्षमता. आप बड़ी परियोजनाओं को अकेले नहीं संभाल सकते, और छोटी परियोजनाओं की विशेष मांग नहीं है। अधिक अनुभवी सहकर्मियों के साथ अस्पष्ट मुद्दों पर चर्चा करना और ज्ञान की कमी को पूरा करना आवश्यक है;
  7. शीघ्रता से सीखने की क्षमता. प्रौद्योगिकियाँ स्थिर नहीं रहतीं। इसलिए, अपनी परियोजनाओं पर मौजूदा काम के अलावा, आपको सूचना प्रौद्योगिकी के क्षेत्र में नवीनतम परिवर्तनों पर लगातार निगरानी रखने और जागरूक रहने की आवश्यकता है।

न्यूनतम ज्ञान और कौशल

Google के इंजीनियरों और प्रोग्रामरों के अनुसार, प्रोग्रामिंग के क्षेत्र में प्रत्येक स्वाभिमानी विशेषज्ञ के पास भविष्य में पेशेवर बनने के लिए न्यूनतम ज्ञान और कौशल होना चाहिए। और इसलिए, एक उच्च स्तरीय विशेषज्ञ बनने के लिए आपको क्या जानना आवश्यक है:

  • कौरसेरा या उडासिटी से दूरस्थ शिक्षा पाठ्यक्रमों का उपयोग करके कंप्यूटर साक्षरता की मूल बातें सीखें;
  • कम से कम एक भाषा (पायथन, सी++, जावा) में प्रोग्रामिंग का ज्ञान प्राप्त करें;
  • अन्य भाषाएँ सीखें (PHP, जावा स्क्रिप्ट, HTML, CSS);
  • कोड का परीक्षण करना सीखें;
  • एल्गोरिदम और डेटा संरचनाओं को समझना सीखें;
  • असतत गणित में ज्ञान प्राप्त करें;
  • ऑपरेटिंग सिस्टम की विशेषताओं का अध्ययन करें;
  • कृत्रिम बुद्धिमत्ता के बारे में ज्ञान प्राप्त करें;
  • कंपाइलर बनाना सीखें;
  • क्रिप्टोग्राफी और समानांतर प्रोग्रामिंग का ज्ञान प्राप्त करें।

व्यावहारिक कार्य शुरू करते समय, उपर्युक्त विशेषज्ञ सलाह देते हैं:

  • अपनी खुद की वेबसाइट, सर्वर या रोबोट बनाएं;
  • एक बड़े सिस्टम का हिस्सा विकसित करें, दस्तावेज़ीकरण और कोड को समझें और प्रोग्राम को डीबग करें;
  • किसी बड़े प्रोजेक्ट पर एक टीम के रूप में काम करना शुरू करें। यह आपको तेजी से सीखने और टीम के साथ बातचीत करने की आदत डालने की अनुमति देगा;
  • अपने ज्ञान और कौशल में लगातार सुधार करें;
  • दूसरों को सिखाने का काम शुरू करें.

मुझे आवश्यक ज्ञान कहाँ से मिल सकता है?

आप प्रोग्रामिंग के क्षेत्र में आवश्यक सैद्धांतिक और व्यावहारिक ज्ञान स्वयं कई तरीकों से प्राप्त कर सकते हैं:

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

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

निष्कर्ष

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

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

विषय पर प्रकाशन