फुलस्टैक वेब डेवलपमेंट के साथ शुरुआत करना
इन दिनों, आधुनिक पूर्ण स्टैक विकास एक समर्पित तकनीकी टीम के साथ छोटी एजेंसियों और बड़ी कंपनियों दोनों में बहुत लोकप्रिय है। पूर्ण स्टैक वेब इंजीनियर प्रौद्योगिकियों के एक पूरे वेब स्टैक पर काम करते हैं फ्रंटएंड, बैकएंड सहित, तथा सर्वर प्रबंधन.
बहुत से लोग तर्क देते हैं कि पूर्ण स्टैक केवल "सभी ट्रेडों का जैक, कोई नहीं का मालिक" होने की ओर जाता है। एक निश्चित दृष्टिकोण से, यह सच हो सकता है, हालांकि कौशल केवल उतना ही महत्वपूर्ण है जितना इसके साथ पूरा किया जा सकता है। कई पूर्ण स्टैक देवता मूल्य प्रदान करते हैं क्योंकि वे एक विचार ले सकते हैं गर्भाधान से लॉन्च तक, और पूरी तरह से समझ प्रक्रिया का हर चरण.
अगर आप सोच रहे हैं पूरा स्टैक रूट जा रहा है, तब तो यह लेख तुम्हारे लिए है। मैं एक पूर्ण स्टैक डेवलपर की सामान्य आवश्यकताओं को समझाऊंगा, जो भूमिका में प्रवेश करता है, और कैसे निपुणता फ्रीलांसरों / ठेकेदारों के लिए उपयोगी हो सकती है जो सीधे ग्राहकों या अपनी परियोजनाओं में काम करना चाहते हैं।.
पूर्ण स्टैक बुनियादी बातों
आधुनिक पूर्ण स्टैक विकास ने एक लंबा सफर तय किया है, क्योंकि वेब प्रौद्योगिकी बहुत बदल गई है। निम्नलिखित पर विचार करने के लिए दिशानिर्देशों के रूप में पूर्ण स्टैक आवश्यकताओं का उपयोग किया जाना चाहिए। आम तौर पर "स्टैक" बोलना एकतरफा चल रही प्रौद्योगिकियों का प्रतिनिधित्व करता है एक वेबसाइट काम करने के लिए. इसका मतलब है फ्रंटएंड कोड, बैकएंड कोड, एक डेटाबेस सिस्टम और सर्वर के लिए एक वेब सर्वर प्लेटफॉर्म + ओएस.
पूर्ण स्टैक विकास का मूल सिद्धांत एक वेबसाइट के निर्माण के सभी पहलुओं को समझना है। इसका मतलब डिजाइन या यूआई / यूएक्स काम का ज्ञान नहीं है, हालांकि यह आपकी व्यवहार्यता और काम की गुणवत्ता में सुधार कर सकता है.
- सीमांत के मूल सिद्धांतों में शामिल हैं HTML / CSS और JavaScript, सबसे अधिक संभावना एक के साथ ढांचा, जैसे कि कोणीय या प्रतिक्रिया.
- एक बैकएंड भाषा के लिए आप एक ऐसी चीज़ चुनना चाहेंगे, जिसे डेटाबेस सिस्टम के साथ जोड़ा जा सके. PHP / MySQL यह सीखने के लिए सबसे आम और सबसे आसान है क्योंकि यह वर्डप्रेस जैसे कई सीएमएस इंजन को शक्ति प्रदान करता है। यह भी दीपक स्टैक undeniably सबसे लोकप्रिय वेब स्टैक आज है.
- सर्वर का ज्ञान आपके लिए जितना चाहें उतना सरल या विस्तृत हो सकता है। पूर्ण मूल बातें जैसे सर्वर प्रोग्राम का ज्ञान होगा अमरीका की एक मूल जनजाति जैसे डेटाबेस के साथ युग्मित माई एसक्यूएल या PostgreSQL.
- मेल सर्वर या प्रदर्शन टूल, जैसे कि मेमेकैच्ड या वार्निश को स्थापित करने का ज्ञान शामिल करने के लिए आप और भी आगे जा सकते हैं.
एक पूर्ण स्टैक देव को पर्याप्त ज्ञान के साथ सभी तीन क्षेत्रों में दबाना चाहिए स्वतंत्र रूप से एक वेबसाइट लॉन्च करें, और किसी और की मदद के बिना.
ज्ञान की तकनीकी गहराई
पूर्ण स्टैक विकास के बारे में एक बड़ा सवाल है प्रत्येक क्षेत्र में जाने के लिए कितना गहरा है. क्या एक पूर्ण स्टैक इंजीनियर वास्तव में कभी किसी चीज का स्वामी है? कुछ का तर्क है कि यह संभव है, लेकिन यह पूर्ण स्टैक जाने का उद्देश्य नहीं हो सकता है.
अधिकांश कंपनियां पूर्ण स्टैक इंजीनियरों को किराए पर लेना चाहती हैं जिनके पास हर जगह थोड़ा सा ज्ञान है। ये इंजीनियर एक क्षेत्र में विशेषज्ञ हो सकते हैं, लेकिन जरूरत पड़ने पर वे किसी भी भूमिका को भरने में सक्षम हैं.
जो देवता इस मार्ग को शुरू कर रहे हैं, उन्हें करना चाहिए सभी क्षेत्रों में खिलौना "सीखने के लिए पर्याप्त" समस्याओं को हल करने के लिए पर्याप्त है. यह प्रौद्योगिकियों को वास्तविक दुनिया की व्याख्या देता है यह देखने के लिए कि वास्तविक परियोजनाओं पर विभिन्न समस्याएं कैसे लागू होती हैं.
पूर्ण स्टैक कोडिंग का सबसे बड़ा लाभ यह करने की क्षमता है अपने खुद के अनुप्रयोगों का निर्माण किसी और के लिए काम किए बिना.
यदि आप विकास प्रक्रिया के हर चरण को सीखते हैं तो आप स्वयं सब कुछ कर सकते हैं। आपको एक कस्टम Laravel ऐप बनाने के लिए PHP का मास्टर होने की आवश्यकता नहीं है। और आपको विशेष रूप से अब एक लचीला ड्रॉपडाउन नेविगेशन बनाने के लिए एक जावास्क्रिप्ट गुरु होने की आवश्यकता नहीं है कि हमारे पास वेब पर इतना खुला स्रोत कोड उपलब्ध है.
तो आपको इनमें से किसी भी क्षेत्र में कितना गहरा जाना चाहिए? यह पूरी तरह से आपके ऊपर है, और आपका जवाब शायद समय के साथ बदल जाएगा.
लेकिन जब पहली बार शुरू हो रहा है, बस एक वास्तविक परियोजना में आपने जो सीखा है, उसे लागू करने के लिए गहराई से जाएं. जब आप किसी ऐसी चीज से टकराते हैं जो आपको समझ में नहीं आती है, इसे गहरे जाने के अवसर के रूप में उपयोग करें, तथा उस विशेष विषय के बारे में अधिक जानें.
भाषाएँ चुनना
यह नए डेवलपर के लिए यह समझने के लिए है कि कौन सी तकनीकें सीखनी हैं। जरूरत के सामान को रास्ते से हटाना, HTML और CSS की आवश्यकता है. जावास्क्रिप्ट भी एक आवश्यकता है, लेकिन आपको खुद को जेएस मास्टर मानने की जरूरत नहीं है। हालाँकि आपको केवल सादे जावास्क्रिप्ट से अधिक सीखने में दिलचस्पी होनी चाहिए.
अधिकांश देवता jQuery के रूप में अच्छी तरह से सीखते हैं, लेकिन React, Ember, Angular, Vue, या Backbone जैसे चौखटे सभी पूर्ण-स्तरीय वेब अनुप्रयोगों के निर्माण के लिए एक सरल प्रक्रिया प्रदान करते हैं।.
और भी गहरी शिक्षा प्राप्त करना संभव है फैंसी जावास्क्रिप्ट प्रभाव, एनिमेशन जैसे, लेकिन वे पूरी तरह से वैकल्पिक हैं। एक पूर्ण स्टैक डेवलपर को काम पूरा करने के लिए पर्याप्त पता होना चाहिए, और वहां से आगे बढ़ना चाहिए.
बैकेंड भाषा विकल्प तकनीकी लाभ के बारे में कम है, और आराम के बारे में अधिक है। अधिकांश प्रोग्रामर को एहसास है कि पायथन PHP की तुलना में अधिक बहुमुखी भाषा है, हालाँकि अधिकांश वेबसाइटें PHP सर्वरों पर चलती हैं। यह बनाता है PHP एक मूल्यवान भाषा है अधिक कंपनियों के लिए.
जो भी भाषा आपकी आवश्यकताओं के अनुरूप हो, उसे चुनें या आपको सबसे बड़ी संभावनाएं प्रदान करें। यह भी ध्यान रखें कि आप हमेशा के लिए एक बैकएंड भाषा के साथ फंस नहीं रहे हैं. यदि आप रूबी के साथ शुरू करते हैं लेकिन पायथन में जाते हैं तो आप इस प्रक्रिया में कुछ भी नहीं खोते हैं.
हालाँकि, मैं सलाह देता हूं कि एक बार जब आप अपनी पसंद की बैकएंड भाषा पा लें, तो उस भाषा के साथ और गहरा व्यवहार करें संबंधित ढांचा चुनें. PHP में लारवेल है, रूबी के पास रेल्स हैं, और पायथन के पास Django है - कई अन्य विकल्पों के बीच। ये चौखटे आपकी विकास प्रक्रिया में तेजी लाएंगे, और आपके अनुप्रयोगों को ठीक से बनाने में आपकी मदद करेंगे.
डेटाबेस और सर्वर
डेटाबेस इंजन का चयन प्रोजेक्ट आवश्यकताओं और सर्वर स्टैक के लिए नीचे आता है। PHP अक्सर MySQL के साथ काम करता है, इसलिए यह सबसे पसंदीदा विकल्प है। दो सबसे बड़े वेब ढेर आज हैं दीपक (Linux-Apache-MySQL-PHP) और मतलब (MongoDB-ExpressJS-AngularJS-Node.js).
अधिकांश होस्टिंग कंपनियां शुरू से ही LAMP की पेशकश करती हैं, जिनमें कोई सेटअप आवश्यक नहीं है। लेकिन डिजिटल महासागर जैसे कस्टम समाधान आपको थोड़ा कोहनी तेल के साथ लगभग कुछ भी चलाने की अनुमति देते हैं। आप इस सूची पर या ऑनलाइन खोज करके और अधिक वेब स्टैक पा सकते हैं.
आपकी पसंद का डेटाबेस अक्सर होगा अपनी बैकएंड भाषा से बंधा हुआ. पायथन डिफ़ॉल्ट रूप से SQLite समर्थन के साथ आता है, और आतंक विरोधी देव आम तौर पर किसी भी चीज़ के साथ काम कर सकते हैं। और ईमानदारी से, कोई भी भाषा आमतौर पर किसी भी डेटाबेस के साथ काम कर सकती है.
लेकिन आप ऐसा कुछ चुनना चाहते हैं जो अधिकांश वेब परियोजनाओं में उपयोग करने के लिए पर्याप्त है। SQL एक सामान्य भाषा है, और यह सभी डेटाबेस इंजनों में ज्यादातर एक ही वाक्यविन्यास का उपयोग करता है। आपको टेबल सेटअप और प्रशासन में अंतर मिलेगा, लेकिन ये आमतौर पर मामूली होते हैं.
डेटाबेस से परे, यहां कुछ तकनीकी सर्वर-साइड विषय हैं जिनके बारे में आप जानना चाहते हैं.
- CDN और सामग्री होस्टिंग
- सर्वर सॉफ्टवेयर स्थापना और अद्यतन
- सर्वश्रेष्ठ सर्वर ट्रैफ़िक स्पाइक्स और लोड समय के लिए कॉन्फ़िगर करता है
- डेटाबेस क्वेरी और फाइल सिस्टम स्टोरेज दोनों के लिए कैशिंग समाधान
- डेटाबेस और फ्लैट फ़ाइलों या डिस्क इमेजिंग बैकअप के स्वचालित बैकअप
- डोमेन प्रबंधन (DNS सर्वर, CNAME रिकॉर्ड आदि) के साथ HTTPS सेटअप
- अधिक विस्तृत विषय, जैसे कि ईमेल, माइक्रोसॉफ़्ट और लोड संतुलन
सीखने के सर्वोत्तम तरीकों में से एक है सर्वर के साथ छेड़छाड़ जैसा कि आप परियोजनाओं का निर्माण करते हैं। एक मूल पकड़ो वीपीएस खाते, और अपने स्वयं के ढेर स्थापित करने का प्रयास करें। ये VPS पूर्ण वर्चुअल सर्वर वातावरण हैं जहाँ आपको सब कुछ कॉन्फ़िगर करने (या नष्ट) करने का पूर्ण नियंत्रण है। इसके अलावा, ऊपर दी गई सूची सभी पूर्ण स्टैक डेवलपर्स के लिए आवश्यक रोडमैप नहीं है.
एकमात्र ज्ञान जो आपको वास्तव में चाहिए एक खाली सर्वर वातावरण बनाने के लिए जो भी आवश्यक हो, और वेबसाइट चलाने के लिए आवश्यक सॉफ़्टवेयर स्थापित करें. वहां से, कुछ और ही बेहतर ज्ञान है। यदि आपके पास कभी प्रश्न हैं या पेशेवरों से सीखना चाहते हैं तो Reddit / r / SysAdmin समुदाय की जाँच करें.
रास्ते में आगे
यदि आप वास्तव में पूर्ण स्टैक विकास सीखना चाहते हैं, उन सभी तकनीकों की सूची बनाएं जिन्हें आप सीखना चाहते हैं. वहां से, आप जो सीखते हैं, उसे परखने के लिए आप अपनी खुद की अभ्यास परियोजनाओं को एक-एक करके उनसे निपट सकते हैं.
वेब विकास एक कभी-बदलने वाला उद्योग है, इसलिए आपको हमेशा अधिक जानने के लिए तैयार रहना चाहिए। विभिन्न स्टैक्स और भाषाओं का परीक्षण तब तक करें जब तक आपको वह पसंद न आ जाए। लेकिन हमेशा गहराई में जाने और बेहतर होने के लिए तैयार रहें!
क्या पूर्ण स्टैक विकास प्रयास के लायक है? यह आपको तय करना है। लेकिन यहां कुछ संबंधित पोस्ट हैं जो आपको यह पता लगाने में मदद कर सकती हैं.
- "फुल-स्टैक" की विरासत पर (Heapsortjobs.com)
- इसलिए आप एक फुल-स्टैक डेवलपर बनना चाहते हैं (Rubysteps.com)
- कैसे एक पूर्ण ढेर डेवलपर बनने के लिए 7 युक्तियाँ (Usersnap.com)