You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Web-Dev-For-Beginners/translations/hi/1-getting-started-lessons/1-intro-to-programming-lang.../README.md

27 KiB

प्रोग्रामिंग भाषाओं और उपयोगी उपकरणों का परिचय

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

प्रोग्रामिंग परिचय

स्केच नोट Tomomi Imura द्वारा

प्री-लेक्चर क्विज़

प्री-लेक्चर क्विज़

परिचय

इस पाठ में हम कवर करेंगे:

  • प्रोग्रामिंग क्या है?
  • प्रोग्रामिंग भाषाओं के प्रकार
  • प्रोग्राम के मूल तत्व
  • पेशेवर डेवलपर के लिए उपयोगी सॉफ़्टवेयर और उपकरण

आप इस पाठ को Microsoft Learn पर ले सकते हैं!

प्रोग्रामिंग क्या है?

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

एक प्रोग्राम कुछ भी हो सकता है जो कोड के साथ लिखा गया हो; वेबसाइट, गेम्स, और फोन ऐप्स सभी प्रोग्राम हैं। हालांकि कोड लिखे बिना प्रोग्राम बनाना संभव है, लेकिन अंतर्निहित लॉजिक उपकरण द्वारा समझा जाता है और वह लॉजिक संभवतः कोड के साथ लिखा गया था। एक प्रोग्राम जो चल रहा है या कोड निष्पादित कर रहा है वह निर्देशों को अंजाम दे रहा है। जिस उपकरण पर आप यह पाठ पढ़ रहे हैं, वह इसे आपकी स्क्रीन पर दिखाने के लिए एक प्रोग्राम चला रहा है।

थोड़ा शोध करें: किसे दुनिया का पहला कंप्यूटर प्रोग्रामर माना जाता है?

प्रोग्रामिंग भाषाएं

प्रोग्रामिंग भाषाएं डेवलपर्स को उपकरणों के लिए निर्देश लिखने में सक्षम बनाती हैं। उपकरण केवल बाइनरी (1s और 0s) को समझ सकते हैं, और अधिकांश डेवलपर्स के लिए यह संवाद करने का बहुत प्रभावी तरीका नहीं है। प्रोग्रामिंग भाषाएं मनुष्यों और कंप्यूटरों के बीच संवाद का माध्यम हैं।

प्रोग्रामिंग भाषाएं विभिन्न स्वरूपों में आती हैं और विभिन्न उद्देश्यों की पूर्ति कर सकती हैं। उदाहरण के लिए, JavaScript मुख्य रूप से वेब एप्लिकेशन के लिए उपयोग की जाती है, जबकि Bash मुख्य रूप से ऑपरेटिंग सिस्टम के लिए उपयोग की जाती है।

लो लेवल भाषाएं आमतौर पर हाई लेवल भाषाओं की तुलना में उपकरण को निर्देश समझने के लिए कम चरणों की आवश्यकता होती है। हालांकि, हाई लेवल भाषाओं की लोकप्रियता उनके पढ़ने में आसान और समर्थन के कारण है। JavaScript को एक हाई लेवल भाषा माना जाता है।

निम्नलिखित कोड JavaScript में एक हाई लेवल भाषा और ARM असेंबली कोड में एक लो लेवल भाषा के बीच अंतर को दर्शाता है।

let number = 10
let n1 = 0, n2 = 1, nextTerm;

for (let i = 1; i <= number; i++) {
    console.log(n1);
    nextTerm = n1 + n2;
    n1 = n2;
    n2 = nextTerm;
}
 area ascen,code,readonly
 entry
 code32
 adr r0,thumb+1
 bx r0
 code16
thumb
 mov r0,#00
 sub r0,r0,#01
 mov r1,#01
 mov r4,#10
 ldr r2,=0x40000000
back add r0,r1
 str r0,[r2]
 add r2,#04
 mov r3,r0
 mov r0,r1
 mov r1,r3
 sub r4,#01
 cmp r4,#00
 bne back
 end

यकीन मानिए, दोनों एक ही काम कर रहे हैं: 10 तक की फिबोनाची अनुक्रम को प्रिंट करना।

फिबोनाची अनुक्रम को परिभाषित किया गया है एक संख्या सेट के रूप में, जहां प्रत्येक संख्या पिछले दो संख्याओं का योग होती है, 0 और 1 से शुरू होकर। फिबोनाची अनुक्रम के पहले 10 नंबर हैं: 0, 1, 1, 2, 3, 5, 8, 13, 21 और 34।

प्रोग्राम के तत्व

एक प्रोग्राम में एकल निर्देश को स्टेटमेंट कहा जाता है और इसमें आमतौर पर एक कैरेक्टर या लाइन स्पेसिंग होती है जो यह चिह्नित करती है कि निर्देश कहां समाप्त होता है, या टर्मिनेट होता है। एक प्रोग्राम कैसे समाप्त होता है, यह प्रत्येक भाषा के साथ अलग-अलग होता है।

प्रोग्राम में स्टेटमेंट्स उपयोगकर्ता या अन्य स्रोतों द्वारा प्रदान किए गए डेटा पर निर्भर हो सकते हैं ताकि निर्देशों को अंजाम दिया जा सके। डेटा प्रोग्राम के व्यवहार को बदल सकता है, इसलिए प्रोग्रामिंग भाषाओं में डेटा को अस्थायी रूप से संग्रहीत करने का तरीका होता है ताकि इसे बाद में उपयोग किया जा सके। इन्हें वेरिएबल्स कहा जाता है। वेरिएबल्स ऐसे स्टेटमेंट्स हैं जो उपकरण को अपनी मेमोरी में डेटा सहेजने का निर्देश देते हैं। प्रोग्राम में वेरिएबल्स गणित में वेरिएबल्स के समान होते हैं, जहां उनका एक अनूठा नाम होता है और उनका मान समय के साथ बदल सकता है।

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

आप इस प्रकार के स्टेटमेंट के बारे में अगले पाठों में अधिक जानेंगे।

उपयोगी उपकरण

उपयोगी उपकरण

🎥 ऊपर दी गई छवि पर क्लिक करें उपकरणों के बारे में वीडियो के लिए

इस अनुभाग में, आप कुछ सॉफ़्टवेयर के बारे में जानेंगे जो आपके पेशेवर विकास यात्रा की शुरुआत में बहुत उपयोगी हो सकते हैं।

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

एडिटर्स

सॉफ़्टवेयर विकास के लिए सबसे महत्वपूर्ण उपकरणों में से एक एडिटर है। एडिटर्स वह जगह हैं जहां आप अपना कोड लिखते हैं और कभी-कभी जहां आप अपना कोड चलाते हैं।

डेवलपर्स एडिटर्स पर कुछ अतिरिक्त कारणों से भरोसा करते हैं:

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

लोकप्रिय एडिटर्स और वेब डेवलपमेंट एक्सटेंशन्स

ब्राउज़र्स

एक और महत्वपूर्ण उपकरण ब्राउज़र है। वेब डेवलपर्स ब्राउज़र पर भरोसा करते हैं यह देखने के लिए कि उनका कोड वेब पर कैसे चलता है। इसका उपयोग एडिटर में लिखे गए वेब पेज के दृश्य तत्वों को प्रदर्शित करने के लिए भी किया जाता है, जैसे HTML।

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

लोकप्रिय ब्राउज़र्स और DevTools

कमांड लाइन टूल्स

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

लोकप्रिय कमांड लाइन विकल्प

कमांड लाइन के विकल्प आपके द्वारा उपयोग किए जाने वाले ऑपरेटिंग सिस्टम के आधार पर भिन्न होंगे।

💻 = ऑपरेटिंग सिस्टम पर पहले से इंस्टॉल आता है।

Windows

MacOS

Linux

लोकप्रिय कमांड लाइन टूल्स

  • Git (💻 अधिकांश ऑपरेटिंग सिस्टम पर)
  • NPM
  • Yarn

दस्तावेज़ीकरण

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

वेब डेवलपमेंट पर लोकप्रिय दस्तावेज़ीकरण

थोड़ा शोध करें: अब जब आप वेब डेवलपर के एनवायरनमेंट की मूल बातें जानते हैं, तो इसे वेब डिज़ाइनर के एनवायरनमेंट के साथ तुलना करें।


🚀 चुनौती

कुछ प्रोग्रामिंग भाषाओं की तुलना करें। JavaScript बनाम Java की कुछ अनूठी विशेषताएं क्या हैं? COBOL बनाम Go के बारे में क्या?

पोस्ट-लेक्चर क्विज़

पोस्ट-लेक्चर क्विज़

समीक्षा और स्व-अध्ययन

प्रोग्रामर के लिए उपलब्ध विभिन्न भाषाओं पर थोड़ा अध्ययन करें। एक भाषा में एक लाइन लिखने का प्रयास करें, और फिर इसे दो अन्य भाषाओं में फिर से लिखें। आपने क्या सीखा?

असाइनमेंट

डॉक्स पढ़ना

नोट: अपने असाइनमेंट के लिए उपकरण चुनते समय, ऊपर सूचीबद्ध एडिटर्स, ब्राउज़र्स, या कमांड लाइन टूल्स का चयन न करें।


अस्वीकरण:
यह दस्तावेज़ AI अनुवाद सेवा Co-op Translator का उपयोग करके अनुवादित किया गया है। जबकि हम सटीकता के लिए प्रयासरत हैं, कृपया ध्यान दें कि स्वचालित अनुवाद में त्रुटियां या अशुद्धियां हो सकती हैं। मूल दस्तावेज़, जो इसकी मूल भाषा में है, को प्रामाणिक स्रोत माना जाना चाहिए। महत्वपूर्ण जानकारी के लिए, पेशेवर मानव अनुवाद की सिफारिश की जाती है। इस अनुवाद के उपयोग से उत्पन्न किसी भी गलतफहमी या गलत व्याख्या के लिए हम उत्तरदायी नहीं हैं।