क्यों सभी डेवलपर्स को कमांड लाइन सीखना चाहिए
कुछ डेवलपर्स ने टर्मिनल विंडो खोलने के बारे में सोचा। असिंचित के लिए यह कठिन, तनावपूर्ण और सर्वथा कष्टप्रद हो सकता है। लेकिन कमांड लाइन को समझने वाले देव इसका तर्क देंगे अपने निपटान में सबसे अच्छे उपकरणों में से एक.
तो आधुनिक विकास के लिए कमांड लाइन कितनी आवश्यक है? मेरा तर्क है कि यह सफलता के लिए जरूरी है, या तो फ्रंटएंड या बैकएंड कोड के साथ काम करना। कमांड लाइन साधारण कमांड के पीछे बंद सुविधाओं का स्विस आर्मी चाकू बन गया है। यदि आप इन आदेशों को जानने के लिए समय लेते हैं तो आप आश्चर्यचकित हो सकते हैं कि चमकते सफेद कर्सर के साथ उस छोटे काले आयत से कितनी शक्ति उपलब्ध है.
आपने सिस्टम फ़ंक्शंस पर अधिक नियंत्रण प्राप्त किया
शायद कमांड लाइन सीखने का सबसे स्पष्ट कारण इसके मूल कार्य के लिए है: अधिक नियंत्रण. केवल शेल के माध्यम से पहुंच योग्य कमांड हैं जो कर सकते हैं बहुत जटिल ऑपरेशन को नियंत्रित करें यूनिक्स / लिनक्स और विंडोज मशीनों पर.
मूल आदेशों में एक निश्चित फ़ाइल पर बदलने की अनुमति या किसी निर्देशिका में ब्राउज़ करना शामिल हो सकता है जो दृश्य से छिपी हो। अधिक जटिल उदाहरणों में Apache / MySQL जैसे स्थानीय सर्वर सेटअप के लिए सर्वर प्रशासन शामिल हो सकता है.
यह कम से कम शेल कमांड की संभावनाओं को समझने के लायक है कि वे कैसे काम करते हैं। प्रौद्योगिकी के एक टुकड़े को सिर्फ इसलिए अनदेखा करना कि वह बहुत भ्रामक है शायद ही कभी एक अच्छा विचार हो.
लेकिन सिस्टम फ़ंक्शंस से परे हमारे पास वेब डेवलपर टूल का एक बहुत बड़ा हिस्सा है जो कमांड लाइन के माध्यम से संचालित होता है। सब कुछ एक एप्लीकेशन की तरह डाउनलोड और इंस्टॉल नहीं किया जा सकता है, इसलिए शेल कमांड्स की समझ आपको डेवलपर्स के लिए नवीनतम टूल इंस्टॉल करने का तरीका सीखने के सिरदर्द से बचाएगा।.
आप पैकेज इंस्टॉल के लिए NPM का उपयोग कर सकते हैं
नोड पैकेज मैनेजर आसानी से आधुनिक डेवलपर्स के लिए सबसे लोकप्रिय उपकरण है। यह Node.js के ऊपर बनाया गया है जो अन्य लिपियों (जैसे NPM) के लिए जावास्क्रिप्ट फ्रेमवर्क के रूप में व्यवहार करता है.
एक बात ध्यान देने वाली है कि एनपीएम नहीं करता एक जीयूआई है। थोड़ा क्लिक करने का कोई तरीका नहीं है “इंस्टॉल करें” बटन आपको मैक ऐप स्टोर पर मिलेगा। हर पैकेज होना चाहिए एनपीएम कमांड के माध्यम से मैन्युअल रूप से स्थापित किया गया है एक टर्मिनल विंडो में.
यह गैर-शेल उपयोगकर्ताओं को कष्टप्रद लग सकता है लेकिन यह वास्तव में बहुत अधिक नियंत्रण प्रदान करता है। एनपीएम लाइब्रेरी में हर हफ्ते 200,000 से अधिक पैकेज शामिल हैं। यह केवल बाहरी रूप से होस्ट करना आसान है और उपयोगकर्ता को यह तय करने दें कि क्या स्थापित करना है.
ध्यान रखें कि इनमें से कुछ उपकरण अपने स्वयं के बाइनरी इंस्टालर के माध्यम से अलग से स्थापित किए जा सकते हैं। लेकिन एनपीएम सब कुछ केंद्रीकृत करता है ताकि आप अपने सभी पसंदीदा टूल को एक दोस्ताना कमांड के साथ खींच सकें: npm स्थापित करें
.
एनपीएम के साथ आपके पास कई उपकरणों की तरह त्वरित पहुंच है:
- असंतोष का शब्द
- घूंट
- कम
- जेड
- CoffeeScript
- Express.js
एक और लोकप्रिय विकल्प एनपीएम पैकेज के साथ रूबी रत्न स्थापित करना है। हालांकि रूबी रत्न एक पैकेज मैनेजर का बिल्कुल हिस्सा नहीं हैं - हालांकि वे एक समान फैशन में अभिनय कर सकते हैं.
किसी भी तरह से दोनों तकनीकों में अल्पविकसित सीएलआई कमांड की समझ की आवश्यकता होती है. आप एनपीएम के साथ एक घंटे से भी कम समय में काम कर सकते हैं यदि आप अभ्यास करने का समय बनाते हैं और वास्तव में समझते हैं कि यह कैसे काम करता है.
आप Git संस्करण नियंत्रण का उपयोग कर सकते हैं
प्रोग्रामर और डेवलपर्स को समान रूप से संस्करण नियंत्रण की शक्ति को समझना चाहिए। की योग्यता एक परियोजना को अलग-अलग संस्करणों में विभाजित / मर्ज करें बस अद्वितीय है.
यदि आप पहले से ही यह नहीं समझते कि यह कैसे संचालित होता है, तो दुर्भाग्य से Git सीखना मुश्किल है। अब कमांड लाइन के अंदर काम करने का भ्रम जोड़ें और यह स्पष्ट है कि Git इतने डेवलपर्स को क्यों डराता है.
शुक्र है कि मूल बातें समझने में आपकी मदद करने के लिए ऑनलाइन कई मुफ्त संसाधन हैं.
कोशिश करें GitHub आपकी मदद करने के लिए GitHub पर एक निःशुल्क शिक्षण उपकरण है स्थानीय रूप से स्थापित किए बिना Git में खिलौना चारों ओर. यह डेवलपर्स के लिए एक निर्देशित ट्यूटोरियल है जिसमें संस्करण नियंत्रण का बिल्कुल ज्ञान नहीं है.
Git की कठिनाई है एक साथ कमांड लाइन सीखते समय वर्जन कंट्रोल कमांड को याद करना. ऐसे डेस्कटॉप ऐप हैं जो GUI की पेशकश करते हैं लेकिन वे फिर भी आपसे वर्जन कंट्रोल (फंडिंग, ब्रांचिंग, मर्जिंग, आदि) के मूल सिद्धांतों को समझने की उम्मीद करते हैं।.
शुरुआत के लिए गिट के लिए सीखने की अवस्था खड़ी हो सकती है। नियमित अभ्यास के साथ अवधारणाओं को ठोस बनाने में अभी भी कुछ महीने लग सकते हैं। लेकिन Git हर डेवलपर के लिए एक अनिवार्य उपकरण है और यह कमांड लाइन सीखने का एक और अच्छा कारण है.
आपको यह आवश्यक है कि आप प्रीप्रोसेसर और टास्क रनर का उपयोग करें
हाल के वर्षों में सीमांत विकास बहुत बदल गया है। हमारे पास HTML के लिए CSS / Haml / Jade के लिए Sass / Less जैसे प्रीप्रोसेसर हैं। जावास्क्रिप्ट के माध्यम से कार्यों को स्वचालित करने के लिए हमारे पास कार्य धावक भी हैं जैसे कि गुलप और ग्रंट। यह लगभग पूरी तरह से नया परिदृश्य है इन तकनीकों को आधुनिक वेबसाइटों के निर्माण के लिए व्यावहारिक रूप से आवश्यक है.
सम्बंधित:
- सीएसएस प्रीप्रोसेसर की तुलना में: सैस बनाम लेस
- बिल्ड स्क्रिप्ट की लड़ाई: गुल्प बनाम ग्रंट
यदि आप पहले से ही जागरूक नहीं हैं, तो Sass और Haml जैसे उपकरण सीधे कमांड लाइन के माध्यम से चलते हैं। वे दोनों प्रीप्रोसेसर हैं रूबी पर बनाया गया तथा कोड संकलन के लिए टर्मिनल कमांड की आवश्यकता होती है. दी गई है कि आप प्रीप्रोसेसिंग को स्वचालित करने के लिए एक गुल कार्य को सेटअप कर सकते हैं, लेकिन इसके लिए कमांड लाइन ज्ञान की भी आवश्यकता होती है.
इन उपकरणों के विकास की प्रक्रिया के लिए आवश्यक होने के साथ-साथ शेल स्क्रिप्टिंग की मूल बातें और कमांड लाइन को समझना भी महत्वपूर्ण है.
यह स्थानीय बैकेंड विकास के लिए है
PHP से Rails और Python तक सब कुछ कमांड लाइन इंटरैक्शन की आवश्यकता है। MAMP जैसे इंस्टॉलेशन टूल ने चीजों को आसान बना दिया है, लेकिन कमांड लाइन में काम करने की कच्ची शक्ति का कोई विकल्प नहीं है.
जबकि MAMP जैसे सॉफ्टवेयर का उपयोग करके PHP को स्थापित किया जा सकता है, Laravel जैसी रूपरेखाओं को संगीतकार की आवश्यकता होती है जो एक निर्भरता प्रबंधक है। यह स्थापना प्रक्रिया लगभग पूरी तरह से कमांड लाइन के माध्यम से जगह लेता है.
Django ढांचे को पाइप के शीर्ष पर एक समान सीएलआई स्थापित प्रक्रिया की आवश्यकता होती है, जो एक मुफ्त पायथन पैकेज प्रबंधक है। इसके अलावा Node.js. पर अपना स्वयं का स्थानीय सर्वर स्थापित करने की प्रक्रिया पर विचार करें। ऐसा करने के लिए आप पहले अपने कंप्यूटर के वातावरण (यूनिक्स या विंडोज) को समझना चाहेंगे। फिर आप Node.js की मूल बातें समझना चाहेंगे.
शेल स्क्रिप्टिंग में थोड़े आराम के साथ अधिक नियंत्रण है पैकेज स्थापित करने के लिए आपकी मशीन पर, अद्यतनों के लिए जाँच करें, एक स्थानीय सर्वर को पुनरारंभ करें, और उन्नत सुविधाओं के लिए मॉड्यूल स्थापित करें.
कोई फर्क नहीं पड़ता कि आप किस भाषा का उपयोग कर रहे हैं या सीखने की कोशिश कर रहे हैं, कमांड लाइन आपके शस्त्रागार में एक शक्तिशाली उपकरण साबित होगी। शेल स्क्रिप्टिंग की एक बहुत ही बुनियादी समझ भी प्रतिभाशाली वेब डेवलपर्स के बाजार में आपके आत्मविश्वास और कार्यस्थल के मूल्य में सुधार कर सकती है.
आगे बढ़ते हुए
कोई फर्क नहीं पड़ता कि आप किस प्रकार का विकास करते हैं, कमांड लाइन को समझने में मूल्य है। यहां तक कि बुनियादी अवधारणाओं को भी स्थापित करना माणिक या संगीतकार एक वेब डेवलपर के रूप में आपके करियर के दौरान उपयोगी साबित होगा.
आरंभ करने के लिए बस आप कुछ सीखना और उसमें गोता लगाना चाहते हैं सास, स्थापना Laravel, या किसी स्थानीय को कॉन्फ़िगर करना Node.js सर्वर। स्वाभाविक रूप से आपको रास्ते में चुनौतियों का सामना करना पड़ेगा, लेकिन स्टैक ओवरफ्लो जैसी वेबसाइटों में आपके लिए आवश्यक सभी प्रोग्रामिंग उत्तर होते हैं.
आने वाले वर्षों में लोकप्रियता बढ़ने के साथ-साथ कमांड लाइन सिंटैक्स की समझ के लिए आपको खुशी होगी। वेब विकास का भविष्य आईडीई में नहीं है, लेकिन अंदर है ओपन सोर्स टूल जो हमारे द्वारा कोड और वेबसाइट बनाने के तरीके को ऑप्टिमाइज़ करते हैं.