वेब विकास में प्रयुक्त तकनीकें बच्चों को समझाई गईं

This post is also available in: English

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

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

वेब विकास में प्रयुक्त प्रौद्योगिकियां

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

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

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

वेब विकास में उपयोग की जाने वाली ये सामान्य प्रौद्योगिकियां हैं:

1. ब्राउजर

वेब ब्राउज़र एक प्रकार का सॉफ़्टवेयर है जो आपको इंटरनेट पर वेबसाइटों को खोजने और देखने की अनुमति देता है। भले ही आप इसे नहीं जानते हों, आप इस पृष्ठ को पढ़ने के लिए अभी एक वेब ब्राउज़र का उपयोग कर रहे हैं! कई अलग-अलग वेब ब्राउज़र हैं, लेकिन कुछ सबसे आम में Google क्रोम, इंटरनेट एक्सप्लोरर, सफारी, माइक्रोसॉफ्ट एज और मोज़िला फ़ायरफ़ॉक्स शामिल हैं।

वेब विकास में प्रयुक्त प्रौद्योगिकियां
वेब ब्राउज़र

कोई फर्क नहीं पड़ता कि आप किस वेब ब्राउज़र का उपयोग करते हैं, आप वेब ब्राउज़ करने की मूल बातें सीखना चाहेंगे। इस पाठ में, हम विभिन्न वेबसाइटों पर नेविगेट करने, टैब्ड ब्राउज़िंग का उपयोग करने, बुकमार्क बनाने आदि के बारे में बात करेंगे।

  • URL और पता बार:प्रत्येक वेबसाइट का एक विशिष्ट पता होता है, जिसे URL कहा जाता है (यूनिफ़ॉर्म रिसोर्स लोकेटर के लिए संक्षिप्त)। यह एक सड़क के पते की तरह है जो आपके ब्राउज़र को बताता है कि इंटरनेट पर कहां जाना है। जब आप ब्राउजर के एड्रेस बार में यूआरएल टाइप करते हैं और अपने कीबोर्ड पर एंटर दबाते हैं, तो ब्राउजर उस यूआरएल से जुड़े पेज को लोड कर देगा। उदाहरण के लिए, हम CodingHero वेबसाइट पर जाने के लिए एड्रेस बार में www.codinghero.ai टाइप करते हैं।
  • लिंक्स: जब भी आप किसी वेबसाइट पर कोई शब्द या वाक्यांश देखते हैं जो नीले या नीले रंग में रेखांकित होता है, तो यह संभवतः एक हाइपरलिंक या संक्षिप्त के लिए लिंक होता है। आप पहले से ही जान सकते हैं कि लिंक कैसे काम करते हैं, भले ही आपने उनके बारे में पहले कभी नहीं सोचा हो। उदाहरण के लिए, नीचे दिए गए लिंक पर क्लिक करने का प्रयास करें। वेब पर नेविगेट करने के लिए लिंक का उपयोग किया जाता है। जब आप किसी लिंक पर क्लिक करते हैं, तो वह आमतौर पर आपको एक अलग वेबपेज पर ले जाएगा। आप यह भी देख सकते हैं कि जब भी आप किसी लिंक पर होवर करते हैं तो आपका कर्सर हाथ के आइकन में बदल जाता है।
  • नेविगेशन बटन: बैक और फॉरवर्ड बटन आपको उन वेबसाइटों पर जाने की अनुमति देते हैं जिन्हें आपने हाल ही में देखा है। आप अपना हाल का इतिहास देखने के लिए दोनों में से किसी एक बटन को क्लिक और होल्ड कर सकते हैं। रिफ्रेश करें बटन वर्तमान पृष्ठ को पुनः लोड करेगा। यदि कोई वेबसाइट काम करना बंद कर देती है, तो रिफ्रेश बटन का उपयोग करके देखें।
  • टैब्ड ब्राउजिंग: कई ब्राउज़र आपको एक नए टैब में लिंक खोलने की अनुमति देते हैं। आप जितने चाहें उतने लिंक खोल सकते हैं, और वे कई विंडो के साथ आपकी स्क्रीन को अव्यवस्थित करने के बजाय एक ही ब्राउज़र विंडो में रहेंगे। एक नए टैब में एक लिंक खोलने के लिए, लिंक पर राइट-क्लिक करें और एक नए टैब में ओपन लिंक चुनें (सटीक शब्द ब्राउज़र से ब्राउज़र में भिन्न हो सकते हैं)।
  • बुकमार्क और हिस्ट्री: यदि आपको कोई ऐसी वेबसाइट मिलती है जिसे आप बाद में देखना चाहते हैं, तो सटीक वेब पता याद रखना कठिन हो सकता है। बुकमार्क, जिन्हें पसंदीदा के रूप में भी जाना जाता है, विशिष्ट वेबसाइटों को सहेजने और व्यवस्थित करने का एक शानदार तरीका है ताकि आप उन्हें बार-बार देख सकें। वर्तमान वेबसाइट को बुकमार्क करने के लिए बस स्टार आइकन खोजें और चुनें। आपका ब्राउज़र आपके द्वारा देखी जाने वाली प्रत्येक साइट का इतिहास भी रखेगा। आपके द्वारा पहले देखी गई साइट को खोजने का यह एक और अच्छा तरीका है। अपना इतिहास देखने के लिए, अपनी ब्राउज़र सेटिंग खोलें—आमतौर पर ऊपरी-दाएं कोने में आइकन पर क्लिक करके—और हिस्ट्री चुनें।
  • फ़ाइलें डाउनलोड करना: लिंक हमेशा किसी अन्य वेबसाइट पर नहीं जाते हैं। कुछ मामलों में, वे एक फ़ाइल की ओर इशारा करते हैं जिसे आपके कंप्यूटर पर डाउनलोड या सहेजा जा सकता है। यदि आप किसी फ़ाइल के लिंक पर क्लिक करते हैं, तो यह स्वचालित रूप से डाउनलोड हो सकती है, लेकिन कभी-कभी यह डाउनलोड करने के बजाय आपके ब्राउज़र में ही खुल जाती है। इसे ब्राउज़र में खुलने से रोकने के लिए, आप लिंक पर राइट-क्लिक कर सकते हैं और लिंक को इस रूप में सहेजें का चयन कर सकते हैं (विभिन्न ब्राउज़र थोड़े अलग शब्दों का उपयोग कर सकते हैं, जैसे लक्ष्य को इस रूप में सहेजें)।
  • प्लग-इन: प्लग-इन छोटे एप्लिकेशन हैं जो आपको अपने वेब ब्राउज़र में कुछ खास प्रकार की सामग्री देखने की अनुमति देते हैं। उदाहरण के लिए, Adobe Flash और Microsoft Silverlight का उपयोग कभी-कभी वीडियो चलाने के लिए किया जाता है, जबकि Adobe Reader का उपयोग PDF फ़ाइलों को देखने के लिए किया जाता है। यदि आपके पास किसी वेबसाइट के लिए सही प्लग-इन नहीं है, तो आपका ब्राउज़र आमतौर पर इसे डाउनलोड करने के लिए एक लिंक प्रदान करेगा। कई बार ऐसा भी हो सकता है कि आपको अपने प्लग-इन को अपडेट करने की आवश्यकता हो।

2. एच टी एम एल

HTML(हाइपरटेक्स्ट मार्कअप लैंग्वेज) वेब का सबसे बुनियादी बिल्डिंग ब्लॉक है। यह वेब सामग्री के अर्थ और संरचना को परिभाषित करता है। HTML के अलावा अन्य तकनीकों का उपयोग आमतौर पर वेब पेज की उपस्थिति/प्रस्तुति (सीएसएस) या कार्यक्षमता/व्यवहार (जावास्क्रिप्ट) का वर्णन करने के लिए किया जाता है।

वेब विकास में प्रयुक्त प्रौद्योगिकियां

“हाइपरटेक्स्ट” उन लिंक्स को संदर्भित करता है जो वेब पेजों को एक दूसरे से जोड़ते हैं, या तो एक वेबसाइट के भीतर या वेबसाइटों के बीच। लिंक वेब का एक मूलभूत पहलू हैं। इंटरनेट पर सामग्री अपलोड करके और इसे अन्य लोगों द्वारा बनाए गए पृष्ठों से जोड़कर, आप वर्ल्ड वाइड वेब में एक सक्रिय भागीदार बन जाते हैं।

HTML वेब ब्राउज़र में प्रदर्शित करने के लिए टेक्स्ट, छवियों और अन्य सामग्री को एनोटेट करने के लिए “मार्कअप” का उपयोग करता है। HTML मार्कअप में विशेष “तत्व” शामिल हैं जैसे ,, और कई अन्य। एक HTML तत्व को “टैग” द्वारा एक दस्तावेज़ में अन्य पाठ से अलग किया जाता है, जिसमें “टैग” से घिरे तत्व का नाम होता है”. टैग के अंदर एक तत्व का नाम केस असंवेदनशील है। यानी इसे अपरकेस, लोअरकेस या मिश्रण में लिखा जा सकता है। उदाहरण के लिए,

3. सीएसएस

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

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

वेब विकास में प्रयुक्त प्रौद्योगिकियां

CSS सीखना और समझना आसान है लेकिन यह HTML दस्तावेज़ की प्रस्तुति पर शक्तिशाली नियंत्रण प्रदान करता है। आमतौर पर, सी एस एस को मार्कअप भाषाओं एच टी एम एल या एक्स एच टी एम एल के साथ जोड़ा जाता है।

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

इन अनुसमर्थित विनिर्देशों को अनुशंसाएँ कहा जाता है क्योंकि W3C का भाषा के वास्तविक कार्यान्वयन पर कोई नियंत्रण नहीं है। स्वतंत्र कंपनियां और संगठन उस सॉफ्टवेयर को बनाते हैं।

CSS का उपयोग करने के निम्नलिखित लाभ हैं:

  • CSS से समय की बचत होती है – आप एक बार CSS लिख सकते हैं और फिर उसी शीट को कई HTML पृष्ठों में पुन: उपयोग कर सकते हैं। आप प्रत्येक एच टी एम एल तत्व के लिए एक शैली परिभाषित कर सकते हैं और इसे जितने चाहें उतने वेब पेजों पर लागू कर सकते हैं।
  • पेज तेजी से लोड होते हैं – यदि आप CSS का उपयोग कर रहे हैं, तो आपको हर बार HTML टैग विशेषताएँ लिखने की आवश्यकता नहीं है। बस एक टैग का एक सी एस एस नियम लिखें और उसे उस टैग की सभी घटनाओं पर लागू करें। तो कम कोड का मतलब है कम डाउनलोड समय।
  • आसान रखरखाव – वैश्विक परिवर्तन करने के लिए, बस शैली बदलें, और सभी वेब पेजों के सभी तत्व स्वचालित रूप से अपडेट हो जाएंगे।
  • HTML से बेहतर शैलियाँ– CSS में HTML की तुलना में विशेषताओं की एक विस्तृत श्रृंखला है, इसलिए आप HTML विशेषताओं की तुलना में अपने HTML पृष्ठ को कहीं बेहतर रूप दे सकते हैं।
  • एकाधिक डिवाइस संगतता (मल्टीप्ल डिवाइस कम्पेटिबिलिटी) – स्टाइल शीट सामग्री को एक से अधिक प्रकार के डिवाइस के लिए अनुकूलित करने की अनुमति देती है। एक ही एच टी एम एल दस्तावेज़ का उपयोग करके, किसी वेबसाइट के विभिन्न संस्करण हैंडहेल्ड डिवाइस जैसे पी डी ए और सेल फोन या प्रिंटिंग के लिए प्रस्तुत किए जा सकते हैं।
  • वैश्विक वेब मानक – अब HTML विशेषताएँ बहिष्कृत की जा रही हैं और CSS का उपयोग करने की अनुशंसा की जा रही है। इसलिए सभी HTML पेजों को भविष्य के ब्राउज़र के साथ संगत बनाने के लिए CSS का उपयोग करना शुरू करना एक अच्छा विचार है।

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

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

वेब विकास में प्रयुक्त प्रौद्योगिकियां
  • पायथन: पायथन सबसे अच्छी प्रोग्रामिंग भाषाओं में से एक है जिसे हर डेवलपर को इस साल सीखना चाहिए। भाषा सीखना आसान है और स्वच्छ और अच्छी तरह से संरचित कोड प्रदान करता है, जिससे यह एक सभ्य वेब एप्लिकेशन बनाने के लिए पर्याप्त शक्तिशाली हो जाता है। पायथन का उपयोग वेब और डेस्कटॉप एप्लिकेशन, GUI- आधारित डेस्कटॉप एप्लिकेशन, मशीन लर्निंग, डेटा साइंस और नेटवर्क सर्वर के लिए किया जा सकता है। प्रोग्रामिंग भाषा को अपार सामुदायिक समर्थन प्राप्त है और कई ओपन-सोर्स लाइब्रेरी, फ्रेमवर्क और मॉड्यूल प्रदान करता है जो एप्लिकेशन डेवलपमेंट को आसान बनाते हैं। उदाहरण के लिए, पायथन Django और Flask, वेब विकास के लिए लोकप्रिय पुस्तकालय, और डेटा विज्ञान अनुप्रयोगों के लिए TensorFlow, Keras और SciPy प्रदान करता है।
  • कोटलिन: कोटलिन एक सामान्य-उद्देश्य वाली प्रोग्रामिंग भाषा है जिसमें टाइप इंट्रेंस होता है। इसे जावा के साथ पूरी तरह से इंटरऑपरेबल होने के लिए डिज़ाइन किया गया है। इसके अलावा, जब से एंड्रॉइड ने इसे अपनी पहली भाषा के रूप में घोषित किया, तब से कोटलिन उन सुविधाओं की पेशकश करता है जो डेवलपर्स मांगते हैं। यह सहजता से इसके भीतर वस्तु-उन्मुख और कार्यात्मक प्रोग्रामिंग सुविधाओं को जोड़ती है। जावा और कोटलिन के बीच सहज अंतर्संचालन Android विकास को तेज और आनंददायक बनाता है। चूंकि कोटलिन जावा में सामने आए प्रमुख मुद्दों को संबोधित करता है, इसलिए कोटलिन में कई जावा ऐप फिर से लिखे गए हैं। उदाहरण के लिए, मजबूत टूलिंग समर्थन के कारण कौरसेरा और पिंटरेस्ट जैसे ब्रांड पहले ही कोटलिन में चले गए हैं। जैसा कि अधिकांश व्यवसाय कोटलिन में जाते हैं, Google जावा से अधिक इस भाषा को बढ़ावा देने के लिए बाध्य है। इसलिए, एंड्रॉइड ऐप डेवलपमेंट इकोसिस्टम में कोटलिन का एक मजबूत भविष्य है। कोटलिन एंड्रॉइड ऐप डेवलपमेंट के लिए सीखने में आसान, ओपन-सोर्स और तेज भाषा है जो गोद लेने से संबंधित बाधाओं को दूर करती है। आप इसका उपयोग एंड्रॉइड डेवलपमेंट, वेब डेवलपमेंट, डेस्कटॉप डेवलपमेंट और सर्वर-साइड डेवलपमेंट के लिए कर सकते हैं।
  • जावा: जावा सर्वर-साइड एप्लिकेशन विकसित करने के लिए उपयोग की जाने वाली सबसे लोकप्रिय प्रोग्रामिंग भाषाओं में से एक रही है। एंड्रॉइड ऐप विकसित करने के लिए जावा एक व्यावहारिक विकल्प है क्योंकि इसका उपयोग अत्यधिक कार्यात्मक प्रोग्राम और प्लेटफॉर्म बनाने के लिए किया जा सकता है। इस ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग भाषा को एक विशिष्ट हार्डवेयर इन्फ्रास्ट्रक्चर की आवश्यकता नहीं है, आसानी से प्रबंधनीय है, और इसमें सुरक्षा का एक अच्छा स्तर है। इसके अलावा, C और C++ जैसी भाषाओं की तुलना में जावा सीखना आसान है। कोई आश्चर्य नहीं, फॉर्च्यून 500 फर्मों में से लगभग 90 प्रतिशत अपने डेस्कटॉप अनुप्रयोगों और बैकएंड विकास परियोजनाओं के लिए जावा पर निर्भर हैं। अपने उद्योग युग के बावजूद, जावा अविश्वसनीय रूप से स्थिर है और जल्द ही किसी भी समय सेवानिवृत्ति के लिए नहीं जा रहा है। यह जावा को 2021 में प्रोग्रामर के बीच सबसे वांछनीय भाषाओं में से एक बनाता है।
  • जावास्क्रिप्ट/नोडजेएस: जावास्क्रिप्ट (जिसे नोडजेएस भी कहा जाता है) डेवलपर्स के बीच एक लोकप्रिय भाषा है, जिन्हें सर्वर-साइड और क्लाइंट-साइड प्रोग्रामिंग पर काम करने की आवश्यकता होती है। यह कई अन्य प्रोग्रामिंग भाषाओं के साथ संगत है, जिससे आप एनिमेशन बना सकते हैं, बटन सेट कर सकते हैं और मल्टीमीडिया का प्रबंधन कर सकते हैं। इसकी उच्च गति और नियमित वार्षिक अपडेट के कारण, जावास्क्रिप्ट आईटी डोमेन में एक अंतिम हिट है। नेटफ्लिक्स, उबेर, पेपाल और कई स्टार्टअप जैसी प्रतिष्ठित फर्में गतिशील वेब पेज बनाने के लिए जावास्क्रिप्ट का उपयोग करती हैं जो सुरक्षित और तेज़ हैं। वास्तव में, HackerRank की 2018 डेवलपर स्किल्स रिपोर्ट साझा करती है कि जावास्क्रिप्ट आज कंपनियों द्वारा आवश्यक शीर्ष प्रोग्रामिंग कौशल है। आज के डिजिटल परिवेश में जावास्क्रिप्ट सर्वव्यापी है। इसलिए, इस भाषा को सीखना पूरी तरह से समझ में आता है।
  • टाइपस्क्रिप्ट: टाइपस्क्रिप्ट, जावास्क्रिप्ट का एक सुपरसेट एक वस्तु-उन्मुख भाषा है जिसे जेएस की क्षमताओं का विस्तार करने के लिए पेश किया गया था। भाषा डेवलपर्स के लिए कोड लिखना और बनाए रखना आसान बनाती है। टाइपस्क्रिप्ट कोड के प्रत्येक घटक का पूरा विवरण प्रदान करता है और इसका उपयोग सख्त सिंटैक्स और कम त्रुटियों के साथ बड़े अनुप्रयोगों को विकसित करने के लिए किया जा सकता है। इसके अलावा, यह अच्छी तरह से संरचित और सीखने में आसान है। इसका विस्तारित टूलबॉक्स अनुप्रयोग विकास को त्वरित बनाता है। इसके द्वारा प्रदान किए जाने वाले लाभों के कारण, टाइपस्क्रिप्ट के 2021 में JS का स्थान लेने की उम्मीद है, जिससे यह भविष्य में सबसे अधिक मांग वाली प्रोग्रामिंग भाषाओं में से एक बन जाएगी।
  • गो: गो एक नई सिस्टम-स्तरीय प्रोग्रामिंग भाषा है जिसमें एक केंद्रित शब्दावली और सरल स्कोपिंग नियम हैं। यह कार्यात्मक प्रोग्रामिंग और ऑब्जेक्ट-ओरिएंटेड शैलियों के सर्वोत्तम पहलुओं को मिश्रित करता है। गो जीथब पर सबसे तेजी से बढ़ने वाली भाषा है, जिसका मतलब जावा और C++ जैसी भाषाओं को बदलना है। स्टैक ओवरफ्लो सर्वेक्षण से पता चलता है कि गो आज डेवलपर्स के बीच पांचवीं सबसे पसंदीदा भाषा है। This is because Go solves issues like slow compilation and execution in large distributed software systems. इस गति लाभ ने गो को क्लाउड इन्फ्रास्ट्रक्चर का एक महत्वपूर्ण घटक बना दिया है। इसलिए, यदि आप सर्वर रहित पारिस्थितिकी तंत्र में काम करने की योजना बना रहे हैं, तो गो आपके लिए भाषा है।
  • स्विफ्ट: स्विफ्ट ऐप्पल द्वारा विकसित एक सामान्य-उद्देश्य संकलित प्रोग्रामिंग भाषा है जो डेवलपर्स को एक सरल और समेकित वाक्यविन्यास प्रदान करती है। यह पायथन और रूबी से गहराई से प्रभावित है जो तेज़, सुरक्षित और सीखने में आसान है। अपनी बहुमुखी प्रतिभा और व्यावहारिक अनुप्रयोगों के कारण, स्विफ्ट ने ऑब्जेक्टिव-सी को ऐप्पल से संबंधित अनुप्रयोगों के लिए मुख्य भाषा के रूप में बदल दिया है। इसके अलावा, चूंकि स्विफ्ट को ऐप्पल द्वारा बढ़ावा दिया जाता है, इसकी लोकप्रियता और सामुदायिक समर्थन बढ़ रहा है। दरअसल, ऐप स्टोर पर टॉप 110 ऐप के एक अध्ययन से पता चला है कि 42 प्रतिशत ऐप पहले से ही स्विफ्ट का इस्तेमाल कर रहे हैं। कम या शून्य अनुभव वाले कोडर्स भाषा सीखने, जटिल कोड के साथ प्रयोग करने और देशी आईओएस और मैकओएस ऐप पर काम करने के लिए स्विफ्ट प्लेग्राउंड का उपयोग कर सकते हैं। स्विफ्ट प्रीमियर कोडिंग भाषा है जो डेवलपर्स को कम समय में आईओएस ऐप बनाने में मदद करती है। प्रोग्रामिंग भाषा नए प्रोग्रामर्स के लिए कई अवसर खोलती है, जिससे वे ऐप डेवलपमेंट की दुनिया में इसे बड़ा बना सकते हैं।

5. फ़्रेमवर्क्स

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

वेब विकास में प्रयुक्त प्रौद्योगिकियां

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

वेब फ्रेमवर्क से जुड़ी कुछ विशेषताओं में वेब कैशिंग, प्रमाणीकरण और प्राधिकरण प्रक्रिया, डेटाबेस मैपिंग और कॉन्फ़िगरेशन और URL मैपिंग शामिल हैं।

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

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

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

आमतौर पर इस्तेमाल किए जाने वाले कुछ ढांचे हैं:

  • Node.js: एक सर्वर-साइड जावास्क्रिप्ट फ्रेमवर्क
  • रूबी ऑन रेल्स: रूबी का उपयोग करके बनाया गया एक पूर्ण-स्टैक ढांचा
  • Django: पायथन का उपयोग करके बनाया गया एक पूर्ण-स्टैक ढांचा
  • आयोनिक: एक मोबाइल ढांचा
  • फोनगैप/कार्डोवा: एक मोबाइल ढांचा जो जावास्क्रिप्ट लिखते समय उपयोग के लिए आईओएस और एंड्रॉइड के मूल एपीआई को उजागर करता है
  • बूटस्ट्रैप: एचटीएमएल/सीएसएस/जावास्क्रिप्ट के साथ निर्माण के लिए एक यूआई (यूजर इंटरफेस) ढांचा
  • फाउंडेशन: एचटीएमएल/सीएसएस/जावास्क्रिप्ट के साथ निर्माण के लिए यूआई ढांचा
  • WordPress: PHP पर निर्मित एक CMS (सामग्री प्रबंधन प्रणाली)
  • Drupal: PHP का उपयोग करके बनाया गया एक CMS ढांचा
  • .NET: माइक्रोसॉफ्ट द्वारा निर्मित एक पूर्ण-स्टैक ढांचा
  • Angular.js: एक फ्रंट-एंड जावास्क्रिप्ट फ्रेमवर्क
  • Ember.js: एक फ्रंट-एंड जावास्क्रिप्ट फ्रेमवर्क
  • Backbone.js: एक फ्रंट-एंड जावास्क्रिप्ट फ्रेमवर्क

6. लाइब्रेरीज

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

सबसे अधिक उपयोग किए जाने वाले कुछ लाइब्रेरीज हैं:

  • डोजो टूलकिट: डोजो एक ओपन-सोर्स जावास्क्रिप्ट लाइब्रेरी है जो क्रॉस-प्लेटफॉर्म, जेएस और अजाक्स-आधारित वेबसाइटों को तेजी से विकसित करने में मदद करती है। DOJO में एपीआई और मॉड्यूल का एक विशाल सेट है।
  • jQuery: jQuery नाटकीय रूप से JS प्रोग्रामिंग को सरल करता है और सीखना और उपयोग करना आसान है। यह अत्यधिक एक्स्टेंसिबल है और वेब पेजों को तेजी से लोड करता है। jQuery डेवलपर के काम को आसान बनाने के लिए बहुत सारे मानक कार्यों को लपेटता है। कई पंक्तियों का एक JS कोड सिर्फ jQuery में कॉल करने का एक तरीका हो सकता है। इसमें विभिन्न कार्यों को करने के लिए कई प्लगइन्स भी हैं। JQuery की कुछ विशेषताएं CSS हेरफेर, HTML / DOM हेरफेर, HTML ईवेंट, एनिमेशन और प्रभाव, उपयोगिताओं और AJAX हैं। JQuery का सबसे अच्छा हिस्सा यह है कि यह डेवलपर के बारे में चिंता किए बिना ब्राउज़र संगतता मुद्दों को कैसे संभालता है। कुछ प्रमुख IT कंपनियाँ जैसे Microsoft, Netflix और Google jQuery का उपयोग करती हैं। वेब पेजों में jQuery को शामिल करना आसान है।
  • Google पॉलिमर: Google द्वारा निर्मित, पॉलिमर एक JS लाइब्रेरी है जो डेवलपर्स को HTML तत्वों का पुन: उपयोग करने और HTML, CSS और JS का उपयोग करके अधिक इंटरैक्टिव एप्लिकेशन बनाने के लिए कस्टम तत्व बनाने की अनुमति देता है। यह विभिन्न प्लेटफार्मों के साथ संगत है। एक बार जब आप कमांड लाइन इंटरफेस या बोवर विधि का उपयोग करके पॉलिमर स्थापित कर लेते हैं, तो आप पहले से विकसित तत्वों का पुन: उपयोग कर सकते हैं, इस बारे में चिंता किए बिना कि वे कैसे बनाए गए थे। आप पॉलीफ़िल्स यानी वेब घटक विनिर्देशों का उपयोग करके अपने कस्टम तत्व भी बना सकते हैं। कस्टम तत्वों को पूरे नेटवर्क में वितरित किया जा सकता है और केवल आवश्यक HTML आयात करके उपयोग किया जा सकता है। पॉलिमर को स्थापित और उपयोग करने के लिए, आपको नोड.जेएस, एनपीएम, बोवर, गिट और पॉलिमर सीएलआई से परिचित होना चाहिए।
  • JavaScript InfoVis टूलकिट: यदि आप डेटा विज़ुअलाइज़ेशन बनाना चाहते हैं जो इंटरैक्टिव और एक साथ खींचने में आसान हैं, तो InfoVis जाने का रास्ता है। टूलकिट कुछ सबसे उन्नत विज़ुअलाइज़ेशन जैसे हाइपरट्री, ट्रीमैप, आरग्राफ, और सामान्य बार, पाई, एरिया, और बहुत कुछ के अलावा। इस टूलकिट का उपयोग करना एक सुखद और उपयोगी अनुभव है। यह आवश्यक इनपुट जानकारी के साथ सुंदर रंग-कोडित ग्राफिक्स बना सकता है। आप बिना किसी अतिरिक्त कोडिंग के ढेर सारे प्रभाव प्राप्त कर सकते हैं। आप पूरे पैकेज के बजाय अपने इच्छित विज़ुअलाइज़ेशन को डाउनलोड कर सकते हैं, जिससे यह वेब पेजों पर इतना भारी नहीं होगा। चूंकि यह टूलकिट डेटा विज़ुअलाइज़ेशन के लिए है, आप सोच सकते हैं कि यह डेटा विश्लेषकों के लिए उपयोगी है; हालाँकि, आपको इसका उपयोग करने के लिए कुछ कोडिंग अनुभव की आवश्यकता है।
  • D3.js: D3 का अर्थ डेटा-संचालित दस्तावेज़ है। D3 के साथ, आप डेटा-संचालित रूपांतरणों को DOM ऑब्जेक्ट पर लागू कर सकते हैं। D3 वाला कीवर्ड ‘डेटा-चालित’ है, जिसका अर्थ है कि प्राप्त डेटा के आधार पर दस्तावेज़ों में हेरफेर किया जाता है। डेटा किसी भी प्रारूप में प्राप्त किया जा सकता है और डीओएम ऑब्जेक्ट्स के साथ बाध्य किया जा सकता है। D3 बहुत तेज़ है और एनिमेशन और इंटरैक्शन के लिए गतिशील व्यवहार का समर्थन करता है। पहले से ही विकसित कई मॉड्यूल हैं जो कोड के पुन: उपयोग के लिए जगह देते हैं। D3 लचीला है और HTML, SVG (स्केलेबल वेक्टर ग्राफिक्स), और CSS की पूरी क्षमताओं का फायदा उठाता है। D3 कोड डिबग करना आसान है क्योंकि यह पथ दिखाने के लिए ब्राउज़र के अंतर्निर्मित निरीक्षक का उपयोग करता है। चूंकि D3 एक घोषणात्मक दृष्टिकोण लागू करता है, यह एक डेवलपर को कोड की कई पंक्तियों को बचाता है। D3.js अब तक के सबसे व्यापक रूप से उपयोग किए जाने वाले JS टूलकिट में से एक है।
  • Pixi.js: पिक्सी जेएस शानदार डिजिटल सामग्री बना सकता है। यह ओपन-सोर्स, क्रॉस-प्लेटफ़ॉर्म 2D इंजन गेम और इंटरैक्टिव, एनीमेशन-आधारित वेबसाइट बनाने में मदद करता है। डिज़नी उन कई बड़े नामों में से एक है जो अपनी डिजिटल सामग्री बनाने के लिए पिक्सी का उपयोग करते हैं। पिक्सी एक सुपर-फास्ट रेंडरिंग इंजन है और इसके प्रदर्शन के लिए वेबजीएल का उपयोग करता है, हालांकि जब वेबजीएल समर्थित नहीं है, तो एचटीएमएल कैनवास का उपयोग किया जाता है। पिक्सी मजबूत और सीधा है क्योंकि यह कुछ सबसे जटिल कार्यों की कार्यक्षमता को एक सरल, उपयोग के लिए तैयार लाइब्रेरी में छुपाता है। यदि आप एडोब फ्लैश जानते हैं, तो आगे सीखने के लिए पिक्सी सबसे आसान चीज है।
  • SWFObject: यह सरल लेकिन शक्तिशाली JS लाइब्रेरी मुख्य रूप से HTML दस्तावेज़ों में फ़्लैश SWF फ़ाइलों को एम्बेड करने के लिए उपयोग की जाती है। यह केवल SWF फ़ाइलों का समर्थन करता है, और SWFObject का उपयोग करके कोई अन्य मीडिया प्रकार एम्बेड नहीं किया जा सकता है। मार्कअप जोड़ने के लिए दो विकल्प हैं – डायनामिक पब्लिशिंग और स्टैटिक पब्लिशिंग। Microsoft, YouTube जैसी कई लोकप्रिय वेबसाइटें, और अधिक SWFObject का उपयोग करती हैं। इस पुस्तकालय का उपयोग करने के लिए, उपयोगकर्ता के ब्राउज़र पर जेएस सक्षम होना चाहिए। SWFObject में विभिन्न कार्यों को करने के लिए कई उपयोगिता कार्य हैं जैसे कि DOM के साथ काम करने के लिए उपयोगिताएँ या यह पहचानने के लिए कि फ़्लैश प्लेयर का नवीनतम संस्करण स्थापित है या नहीं।
  • Velocity.js: वेलोसिटी.जेएस के साथ वेब एनिमेशन आसानी से बन जाता है। यह एक तेज़ प्रदर्शन इंजन है जो वेबसाइट एनिमेशन को सरल बनाता है। यह मुफ़्त, ओपन-सोर्स सॉफ़्टवेयर है। वेग सीएसएस और jQuery जितना तेज़ (या अधिक) है, खासकर मोबाइल उपकरणों पर। हम jQuery या CSS के विपरीत, जहां हमें व्यापक कोडिंग की आवश्यकता होती है, हम एक के बाद एक एनिमेशन के अनुक्रम को साफ-सुथरे तरीके से चला सकते हैं। उबेर, व्हाट्सएप, एचटीसी, और कई अन्य वेबसाइटें अपने यूआई को शक्ति देने के लिए वेग का उपयोग करती हैं। वेग शामिल करना सरल है – JS फ़ाइल शामिल करें।
  • रिएक्ट जेएस: वेब एप्लिकेशन (फ्रंट-व्यू या एमवीसी आर्किटेक्चर के मॉडल) के लिए यूजर इंटरफेस बनाने के लिए जेएस लाइब्रेरी को समझना और उपयोग करना आसान है। रिएक्ट का रखरखाव फेसबुक और कुछ अन्य कंपनियां करती हैं। रिएक्ट घोषणात्मक, कुशल और लचीला है जो डेवलपर्स को कोड के मौजूदा टुकड़ों का उपयोग करके अधिक जटिल यूआई बनाने देता है, जिसे घटकों के रूप में भी जाना जाता है। प्रतिक्रिया तेज और मापनीय है, इसलिए अनुप्रयोगों में किसी भी परिवर्तन को पुनः लोड करने के लिए किसी पृष्ठ की आवश्यकता नहीं होती है।
  • PHP: जैसा कि नाम से पता चलता है, JsPHP एक जावास्क्रिप्ट लाइब्रेरी है जो PHP API के लिए JS वातावरण में उपलब्ध है। यह ओपन-सोर्स है और PHP में काम करने वाले JS डेवलपर्स के लिए एक सम्मोहक इंटरफ़ेस प्रदान करता है। JsPHP एक एप्लिकेशन में अन्य लाइब्रेरीज के साथ मिलकर काम कर सकता है। जेएसपीएचपी नियमित अभिव्यक्ति, दिनांक-समय मूल्यांकन, जेएसओएन, त्रुटि प्रबंधन, ऑब्जेक्ट मैनिपुलेशन, स्ट्रिंग्स, एक्सएमएल, यूआरएल आदि सहित PHP कार्यों का समर्थन करता है।
  • QUnit: QUnit एक इकाई परीक्षण उपकरण (बल्कि रूपरेखा) है जो किसी भी सामान्य जावास्क्रिप्ट कोड का परीक्षण कर सकता है। अधिकांश jQuery प्रोजेक्ट QUnit का उपयोग करते हैं। QUnit आवश्यक हो गया है क्योंकि JS अब किसी भी वेब प्रोजेक्ट का अभिन्न अंग है, और इतनी सारी कार्यक्षमताओं का मैन्युअल परीक्षण जटिल और अविश्वसनीय है। इसके अलावा, QUnit शक्तिशाली और उपयोग में आसान है। एक एप्लिकेशन के लिए लिखे गए यूनिट परीक्षणों का ब्राउज़र में अन्य एप्लिकेशन के लिए पुन: उपयोग किया जा सकता है।

7. डेटाबेस

वेब डेटाबेस एक डेटाबेस एप्लिकेशन है जिसे इंटरनेट के माध्यम से प्रबंधित और एक्सेस करने के लिए डिज़ाइन किया गया है। वेबसाइट ऑपरेटर डेटा के इस संग्रह का प्रबंधन कर सकते हैं और वेब डेटाबेस एप्लिकेशन में डेटा के आधार पर विश्लेषणात्मक परिणाम प्रस्तुत कर सकते हैं।

वेब विकास में प्रयुक्त प्रौद्योगिकियां

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

वेब विकास में उपयोग किए जाने वाले कुछ सामान्य डेटाबेस हैं:

  • Oracle 12c: इसमें कोई आश्चर्य की बात नहीं है कि Oracle लोकप्रिय डेटाबेस की सूची में लगातार शीर्ष पर है। इस डेटाबेस प्रबंधन उपकरण का पहला संस्करण 70 के दशक के अंत में बनाया गया था, और आपके संगठन की जरूरतों को पूरा करने के लिए इस उपकरण के कई संस्करण उपलब्ध हैं। Oracle का नवीनतम संस्करण, 12c, क्लाउड के लिए डिज़ाइन किया गया है और इसे एकल सर्वर या एकाधिक सर्वर पर होस्ट किया जा सकता है, और यह अरबों रिकॉर्ड रखने वाले डेटाबेस के प्रबंधन को सक्षम बनाता है। Oracle के नवीनतम संस्करण की कुछ विशेषताओं में एक ग्रिड ढांचा और भौतिक और तार्किक दोनों संरचनाओं का उपयोग शामिल है। इसका मतलब है कि भौतिक डेटा प्रबंधन का तार्किक संरचनाओं तक पहुंच पर कोई प्रभाव नहीं पड़ता है। साथ ही, इस रिलीज़ में सुरक्षा उत्कृष्ट है क्योंकि प्रत्येक लेन-देन दूसरों से अलग है।
  • MySQL: MySQL वेब-आधारित अनुप्रयोगों के लिए सबसे लोकप्रिय डेटाबेस में से एक है। यह फ्रीवेयर है, लेकिन इसे अक्सर सुविधाओं और सुरक्षा सुधारों के साथ अपडेट किया जाता है। व्यावसायिक उपयोग के लिए डिज़ाइन किए गए कई प्रकार के सशुल्क संस्करण भी हैं। फ्रीवेयर संस्करण के साथ, सुविधाओं की एक विस्तृत श्रृंखला को शामिल करने के बजाय गति और विश्वसनीयता पर अधिक ध्यान दिया जाता है, जो कि आप जो करने का प्रयास कर रहे हैं उसके आधार पर अच्छा या बुरा हो सकता है। यह डेटाबेस इंजन आपको विभिन्न प्रकार के स्टोरेज इंजनों से चयन करने की अनुमति देता है जो आपको टूल की कार्यक्षमता को बदलने और विभिन्न प्रकार के टेबल से डेटा को संभालने में सक्षम बनाता है। इसमें इंटरफ़ेस का उपयोग करना भी आसान है, और बैच कमांड आपको भारी मात्रा में डेटा संसाधित करने देता है। प्रणाली भी अविश्वसनीय रूप से विश्वसनीय है और संसाधनों को हॉग नहीं करती है।
  • Microsoft SQL सर्वर: अन्य लोकप्रिय डेटाबेस की तरह, आप Microsoft SQL सर्वर के कई संस्करणों में से चयन कर सकते हैं। यह डेटाबेस प्रबंधन इंजन क्लाउड-आधारित सर्वरों के साथ-साथ स्थानीय सर्वरों पर भी काम करता है, और इसे एक ही समय में दोनों पर काम करने के लिए सेट किया जा सकता है। Microsoft SQL Server 2016 के रिलीज़ होने के कुछ ही समय बाद, Microsoft ने इसे Linux के साथ-साथ Windows-आधारित प्लेटफ़ॉर्म पर भी उपलब्ध कराया। 2016 संस्करण के लिए कुछ असाधारण सुविधाओं में अस्थायी डेटा समर्थन शामिल है, जो समय के साथ डेटा में किए गए परिवर्तनों को ट्रैक करना संभव बनाता है। Microsoft SQL सर्वर का नवीनतम संस्करण डायनेमिक डेटा मास्किंग की भी अनुमति देता है, जो यह सुनिश्चित करता है कि केवल अधिकृत व्यक्ति ही संवेदनशील डेटा देखेंगे।
  • PostgreSQL: PostgreSQL कई मुफ्त लोकप्रिय डेटाबेस में से एक है, और इसे अक्सर वेब डेटाबेस के लिए उपयोग किया जाता है। यह विकसित किए जाने वाले पहले डेटाबेस प्रबंधन प्रणालियों में से एक था, और यह उपयोगकर्ताओं को संरचित और असंरचित डेटा दोनों का प्रबंधन करने की अनुमति देता है। इसका उपयोग अधिकांश प्रमुख प्लेटफार्मों पर भी किया जा सकता है, जिसमें लिनक्स-आधारित प्लेटफॉर्म भी शामिल हैं, और टूल का उपयोग करके अन्य डेटाबेस प्रकारों से जानकारी आयात करना काफी सरल है। इस डेटाबेस प्रबंधन इंजन को वर्चुअल, भौतिक और क्लाउड-आधारित वातावरण सहित कई वातावरणों में होस्ट किया जा सकता है। नवीनतम संस्करण, PostgreSQL 9.5, बड़े डेटा वॉल्यूम और समवर्ती उपयोगकर्ताओं की संख्या में वृद्धि प्रदान करता है। DBMS_SESSION और विस्तारित पासवर्ड प्रोफाइल दोनों के समर्थन के लिए धन्यवाद, सुरक्षा में भी सुधार किया गया है।
  • MongoDB: एक और मुफ्त डेटाबेस जिसका एक व्यावसायिक संस्करण भी है, MongoDB उन अनुप्रयोगों के लिए डिज़ाइन किया गया है जो संरचित और असंरचित डेटा दोनों का उपयोग करते हैं। डेटाबेस इंजन बहुत बहुमुखी है, और यह डेटाबेस को MongoDB डेटाबेस ड्राइवरों के माध्यम से अनुप्रयोगों से जोड़कर काम करता है। ड्राइवरों का एक व्यापक चयन उपलब्ध है, इसलिए ऐसे ड्राइवर को ढूंढना आसान है जो उपयोग की जा रही प्रोग्रामिंग भाषा के साथ काम करेगा। चूंकि MongoDB को रिलेशनल डेटा मॉडल को संभालने के लिए डिज़ाइन नहीं किया गया था, भले ही यह हो सकता है, यदि आप इसे इस तरह से उपयोग करने का प्रयास करते हैं, तो प्रदर्शन के मुद्दे सामने आने की संभावना है। हालांकि, डेटाबेस इंजन को वेरिएबल डेटा को संभालने के लिए डिज़ाइन किया गया है जो रिलेशनल नहीं है, और यह अक्सर अच्छी तरह से काम कर सकता है जहां अन्य डेटाबेस इंजन संघर्ष करते हैं या विफल होते हैं। MongoDB 3.2 नवीनतम संस्करण है, और इसमें नए प्लग करने योग्य स्टोरेज इंजन हैं। दस्तावेज़ों को अब अद्यतन और सम्मिलन के दौरान भी मान्य किया जा सकता है, और पाठ खोज कार्यों में सुधार किया गया है। एक नई आंशिक अनुक्रमणिका क्षमता भी अनुक्रमणिका के आकार को कम करके बेहतर प्रदर्शन की अनुमति दे सकती है।
  • MariaDB: यह डेटाबेस प्रबंधन प्रणाली मुफ्त है, और कई अन्य मुफ्त पेशकशों की तरह, MariaDB भी भुगतान किए गए संस्करण प्रदान करता है। इसके लिए कई प्रकार के प्लगइन्स उपलब्ध हैं, और यह सबसे तेजी से बढ़ने वाला ओपन सोर्स डेटाबेस उपलब्ध है। डेटाबेस इंजन आपको विभिन्न प्रकार के स्टोरेज इंजनों में से चुनने की अनुमति देता है, और यह एक अनुकूलक के माध्यम से संसाधनों का बहुत अच्छा उपयोग करता है जो क्वेरी प्रदर्शन और प्रसंस्करण को बढ़ाता है। यह MySQL के साथ भी अत्यधिक संगत है, और यह कमांड और एपीआई के सटीक मिलान के साथ प्रतिस्थापन में गिरावट है क्योंकि MySQL के कई डेवलपर्स इसके विकास में शामिल थे।
  • DB2: IBM द्वारा बनाया गया, DB2 एक डेटाबेस इंजन है जिसमें NoSQL क्षमताएं हैं, और यह JSON और XML फ़ाइलों को पढ़ सकता है। अप्रत्याशित रूप से, इसे IBM के iSeries सर्वर पर उपयोग करने के लिए डिज़ाइन किया गया है, लेकिन वर्कस्टेशन संस्करण विंडोज, लिनक्स और यूनिक्स पर काम करता है। DB2 का वर्तमान संस्करण LUW 11.1 है, जो कई प्रकार के सुधार प्रदान करता है। एक, विशेष रूप से, बीएलयू एक्सेलेरेशन का सुधार था, जिसे इस डेटाबेस इंजन को डेटा स्किपिंग तकनीक के माध्यम से तेजी से काम करने के लिए डिज़ाइन किया गया है। डेटा स्किपिंग को मेमोरी में फिट होने की तुलना में अधिक डेटा वाले सिस्टम की गति में सुधार करने के लिए डिज़ाइन किया गया है। DB2 का नवीनतम संस्करण बेहतर डिजास्टर रिकवरी फ़ंक्शंस, संगतता और विश्लेषण भी प्रदान करता है।
  • SAP HANA: SAP SE द्वारा डिज़ाइन किया गया, SAP HANA एक डेटाबेस इंजन है जो स्तंभ-उन्मुख है और SAP और गैर-SAP डेटा को संभाल सकता है। इंजन को भंडारण के कई स्तरों में अनुप्रयोगों और अन्य स्रोतों से डेटा को बचाने और पुनर्प्राप्त करने के लिए डिज़ाइन किया गया है। भौतिक सर्वर से होस्ट करने में सक्षम होने के साथ-साथ इसे क्लाउड से भी होस्ट किया जा सकता है।

8. क्लाइंट (या क्लाइंट-साइड)

वेब विकास में, ‘क्लाइंट-साइड’ वेब एप्लिकेशन में सब कुछ संदर्भित करता है जो क्लाइंट (एंड-यूज़र डिवाइस) पर प्रदर्शित या होता है। इसमें वह शामिल है जो उपयोगकर्ता देखता है, जैसे पाठ, चित्र, और शेष UI, साथ ही उपयोगकर्ता के ब्राउज़र में एप्लिकेशन द्वारा की जाने वाली कोई भी क्रिया।

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

ऊपर दिए गए netflix.com उदाहरण में, HTML, CSS, और JavaScript जो यह निर्धारित करते हैं कि उपयोगकर्ता को Netflix का मुख्य पृष्ठ कैसा दिखाई देता है, क्लाइंट-साइड पर ब्राउज़र द्वारा व्याख्या की जाती है। पृष्ठ ‘घटनाओं’ पर भी प्रतिक्रिया दे सकता है: उदाहरण के लिए, यदि उपयोगकर्ता का माउस मूवी थंबनेल छवियों में से किसी एक पर होवर करता है, तो छवि फैलती है और बड़ी छवि के लिए जगह बनाने के लिए आसन्न थंबनेल थोड़ा सा एक तरफ चले जाते हैं। यह क्लाइंट-साइड प्रक्रिया का एक उदाहरण है; वेबपेज के भीतर कोड ही उपयोगकर्ता के माउस पर प्रतिक्रिया करता है और सर्वर से संचार किए बिना यह क्रिया शुरू करता है।

क्लाइंट-साइड को फ़्रंटएंड के रूप में भी जाना जाता है, हालांकि इन दो शब्दों का मतलब बिल्कुल एक ही चीज़ नहीं है। क्लाइंट-साइड केवल उस स्थान को संदर्भित करता है जहां प्रक्रियाएं चलती हैं, जबकि फ्रंटएंड क्लाइंट-साइड चलाने वाली प्रक्रियाओं के प्रकार को संदर्भित करता है।

9. सर्वर (या सर्वर-साइड)

क्लाइंट-साइड की तरह, ‘सर्वर साइड’ का मतलब क्लाइंट के बजाय सर्वर पर होने वाली हर चीज से है। अतीत में, लगभग सभी व्यावसायिक तर्क सर्वर-साइड पर चलते थे, और इसमें गतिशील वेब पेजों को प्रस्तुत करना, डेटाबेस के साथ बातचीत करना, पहचान प्रमाणीकरण और पुश नोटिफिकेशन शामिल थे।

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

‘फ्रंटएंड’ और ‘क्लाइंट-साइड’ की तरह, बैकएंड भी सर्वर पर होने वाली प्रक्रियाओं के लिए एक शब्द है, हालांकि बैकएंड केवल प्रक्रियाओं के प्रकारों को संदर्भित करता है और सर्वर-साइड उस स्थान को संदर्भित करता है जहां प्रक्रियाएं चलती हैं।

10. फ्रंट-एंड

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

फ्रंट एन्ड कुछ भाषाओं का उपयोग करके बनाया गया है जिनकी चर्चा नीचे की गई है:

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

कई अन्य भाषाएँ हैं जिनके माध्यम से कोई व्यक्ति फ्रेमवर्क के आधार पर फ्रंट-एंड डेवलपमेंट कर सकता है, उदाहरण के लिए फ़्लटर उपयोगकर्ता डार्ट, रिएक्ट जावास्क्रिप्ट का उपयोग करता है और Django पायथन का उपयोग करता है, और बहुत कुछ।

  • AngularJS: AngularJs एक जावास्क्रिप्ट ओपन-सोर्स फ्रंट-एंड फ्रेमवर्क है जो मुख्य रूप से सिंगल-पेज वेब एप्लिकेशन (एसपीए) विकसित करने के लिए उपयोग किया जाता है। यह एक निरंतर बढ़ता और विस्तार करने वाला ढांचा है जो वेब अनुप्रयोगों के विकास के लिए बेहतर तरीके प्रदान करता है। यह स्थिर HTML को डायनामिक HTML में बदल देता है। यह एक ओपन-सोर्स प्रोजेक्ट है जो मुफ़्त हो सकता है। यह निर्देशों के साथ HTML विशेषताओं का विस्तार करता है, और डेटा HTML से बंधा होता है।
  • React.js: रिएक्ट यूजर इंटरफेस के निर्माण के लिए एक घोषणात्मक, कुशल और लचीली जावास्क्रिप्ट लाइब्रेरी है। ReactJS एक ओपन-सोर्स, कंपोनेंट-आधारित फ्रंट-एंड लाइब्रेरी है जो केवल एप्लिकेशन की व्यू लेयर के लिए जिम्मेदार है। इसकी देखरेख फेसबुक करता है।
  • बूटस्ट्रैप: उत्तरदायी वेबसाइट और वेब एप्लिकेशन बनाने के लिए बूटस्ट्रैप एक स्वतंत्र और ओपन-सोर्स टूल संग्रह है। यह उत्तरदायी, मोबाइल-प्रथम वेबसाइटों को विकसित करने के लिए सबसे लोकप्रिय HTML, CSS और जावास्क्रिप्ट ढांचा है।
  • jQuery: jQuery एक ओपन-सोर्स जावास्क्रिप्ट लाइब्रेरी है जो एचटीएमएल/सीएसएस दस्तावेज़, या अधिक सटीक रूप से दस्तावेज़ ऑब्जेक्ट मॉडल (डीओएम), और जावास्क्रिप्ट के बीच बातचीत को सरल बनाता है। शर्तों को विस्तृत करते हुए, jQuery HTML दस्तावेज़ ट्रैवर्सिंग और हेरफेर, ब्राउज़र ईवेंट हैंडलिंग, DOM एनिमेशन, अजाक्स इंटरैक्शन और क्रॉस-ब्राउज़र जावास्क्रिप्ट विकास को सरल बनाता है।
  • SASS: यह सबसे विश्वसनीय, परिपक्व और मजबूत CSS एक्सटेंशन भाषा है। इसका उपयोग किसी साइट के मौजूदा सीएसएस की कार्यक्षमता को बढ़ाने के लिए किया जाता है, जिसमें चर, वंशानुक्रम और नेस्टिंग से सब कुछ आसानी से शामिल है।
  • फ्लटर: फ्लटर एक खुला स्रोत यूआई विकास एसडीके है जिसे Google द्वारा प्रबंधित किया जाता है। यह डार्ट प्रोग्रामिंग भाषा द्वारा संचालित है। यह एक ही कोड बेस से मोबाइल (आईओएस, एंड्रॉइड), वेब और डेस्कटॉप के लिए प्रदर्शनकारी और अच्छे दिखने वाले मूल रूप से संकलित एप्लिकेशन बनाता है। स्पंदन का प्रमुख विक्रय बिंदु फ्लैट विकास को आसान, अभिव्यंजक और लचीला UI और मूल प्रदर्शन बनाया गया है। मार्च 2021 में स्पंदन ने फ़्लटर 2 की घोषणा की जो वेब के लिए रिलीज़ एप्लिकेशन बनाने के लिए फ़्लटर को अपग्रेड करता है, और डेस्कटॉप बीटा अवस्था में है।

11. बैक-एंड

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

पिछला भाग कुछ भाषाओं का उपयोग करके बनाया गया है जिनकी चर्चा नीचे की गई है:

  • PHP: PHP एक सर्वर-साइड स्क्रिप्टिंग भाषा है जिसे विशेष रूप से वेब विकास के लिए डिज़ाइन किया गया है। चूंकि PHP कोड सर्वर-साइड पर निष्पादित होता है, इसलिए इसे सर्वर-साइड स्क्रिप्टिंग भाषा कहा जाता है।
  • C++: यह एक सामान्य-उद्देश्य वाली प्रोग्रामिंग भाषा है और आजकल प्रतिस्पर्धी प्रोग्रामिंग के लिए व्यापक रूप से उपयोग की जाती है। इसका उपयोग बैकएंड भाषा के रूप में भी किया जाता है।
  • जावा: जावा सबसे लोकप्रिय और व्यापक रूप से उपयोग की जाने वाली प्रोग्रामिंग भाषाओं और प्लेटफार्मों में से एक है। यह अत्यधिक स्केलेबल है। जावा घटक आसानी से उपलब्ध हैं।
  • पायथन: पायथन एक प्रोग्रामिंग भाषा है जो आपको तेजी से काम करने और सिस्टम को अधिक कुशलता से एकीकृत करने देती है।
  • जावास्क्रिप्ट: जावास्क्रिप्ट का उपयोग दोनों (फ्रंट एंड और बैक एंड) प्रोग्रामिंग भाषाओं के रूप में किया जा सकता है।
  • Node.js: Node.js एक ब्राउज़र के बाहर जावास्क्रिप्ट कोड को निष्पादित करने के लिए एक खुला स्रोत और क्रॉस-प्लेटफ़ॉर्म रनटाइम वातावरण है। आपको यह याद रखने की आवश्यकता है कि NodeJS एक ढांचा नहीं है, और यह एक प्रोग्रामिंग भाषा नहीं है। अधिकांश लोग भ्रमित हैं और समझते हैं कि यह एक ढांचा या प्रोग्रामिंग भाषा है। हम अक्सर वेब ऐप या मोबाइल ऐप जैसी एपीआई जैसी बैक-एंड सेवाओं के निर्माण के लिए Node.js का उपयोग करते हैं। इसका उपयोग पेपैल, उबेर, नेटफ्लिक्स, वॉलमार्ट जैसी बड़ी कंपनियों द्वारा उत्पादन में किया जाता है।

12. प्रोटोकॉल्स

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

प्रोटोकॉल नियमों का एक समूह है जो यह निर्धारित करता है कि सार्वजनिक नेटवर्क (इंटरनेट) पर डेटा कैसे वितरित किया जाना चाहिए। अक्सर ट्रांसमिशन कंट्रोल प्रोटोकॉल (टीसीपी) के संयोजन में काम करता है, जो इंटरनेट के माध्यम से कुशल परिवहन के लिए ट्रैफ़िक को पैकेट में विभाजित करता है; एक साथ उन्हें टीसीपी/आईपी के रूप में जाना जाता है।

विभिन्न प्रकार के प्रोटोकॉल हैं जो पूरे नेटवर्क में विभिन्न उपकरणों के साथ संचार करने में एक प्रमुख और अनुकंपा भूमिका का समर्थन करते हैं। ये हैं:

  • ट्रांसमिशन कंट्रोल प्रोटोकॉल (टीसीपी): टीसीपी एक लोकप्रिय संचार प्रोटोकॉल है जिसका उपयोग नेटवर्क पर संचार करने के लिए किया जाता है। यह किसी भी संदेश को पैकेट की एक श्रृंखला में विभाजित करता है जो स्रोत से गंतव्य तक भेजे जाते हैं और वहां इसे गंतव्य पर फिर से इकट्ठा किया जाता है।
  • इंटरनेट प्रोटोकॉल (आईपी): आईपी को स्पष्ट रूप से एक एड्रेसिंग प्रोटोकॉल के रूप में डिज़ाइन किया गया है। यह अधिकाँश टी सी पी के साथ प्रयोग किया जाता है। पैकेट में आई पी एड्रेस नेटवर्क में अलग-अलग नोड्स के माध्यम से उन्हें रूट करने में मदद करते हैं जब तक कि यह गंतव्य सिस्टम तक नहीं पहुंच जाता। टी सी पी / आई पी नेटवर्क को जोड़ने वाला सबसे लोकप्रिय प्रोटोकॉल है।
  • उपयोगकर्ता डेटाग्राम प्रोटोकॉल (यूडीपी): यूडीपी ट्रांसमिशन कंट्रोल प्रोटोकॉल के लिए एक वैकल्पिक संचार प्रोटोकॉल है जो मुख्य रूप से विभिन्न अनुप्रयोगों के बीच हानि-सहनशील और कम-विलंबता लिंकिंग बनाने के लिए लागू किया गया है।
  • पोस्ट ऑफिस प्रोटोकॉल (पीओपी): पीओपी3 को आने वाली ई-मेल प्राप्त करने के लिए डिज़ाइन किया गया है।
  • सरल मेल ट्रांसपोर्ट प्रोटोकॉल (एसएमटीपी): एसएमटीपी को आउटगोइंग ई-मेल भेजने और वितरित करने के लिए डिज़ाइन किया गया है।
  • फाइल ट्रांसफर प्रोटोकॉल (एफ़टीपी): एफ़टीपी उपयोगकर्ताओं को एक मशीन से दूसरी मशीन में फाइल ट्रांसफर करने की अनुमति देता है। फाइलों के प्रकारों में प्रोग्राम फाइलें, मल्टीमीडिया फाइलें, टेक्स्ट फाइलें और दस्तावेज आदि शामिल हो सकते हैं।
  • हाइपर टेक्स्ट ट्रांसफर प्रोटोकॉल (HTTP): HTTP को दो या दो से अधिक सिस्टम के बीच हाइपरटेक्स्ट ट्रांसफर करने के लिए डिज़ाइन किया गया है। एच टी एम् एल टैग लिंक बनाने के लिए उपयोग किए जाते हैं। ये लिंक टेक्स्ट या छवियों के रूप में हो सकते हैं। HTTP को क्लाइंट-सर्वर सिद्धांतों पर डिज़ाइन किया गया है जो क्लाइंट सिस्टम को अनुरोध करने के लिए सर्वर मशीन के साथ कनेक्शन स्थापित करने की अनुमति देता है। सर्वर क्लाइंट द्वारा शुरू किए गए अनुरोध को स्वीकार करता है और तदनुसार प्रतिक्रिया करता है।
  • हाइपर टेक्स्ट ट्रांसफर प्रोटोकॉल सिक्योर (HTTPS): HTTPS को संक्षिप्त रूप में हाइपर टेक्स्ट ट्रांसफर प्रोटोकॉल सिक्योर दो कंप्यूटरों के बीच संचार को सुरक्षित करने के लिए एक मानक प्रोटोकॉल है, एक ब्राउज़र का उपयोग करके और दूसरा वेब सर्वर से डेटा प्राप्त करने के लिए। HTTP का उपयोग क्लाइंट ब्राउज़र (अनुरोध) और वेब सर्वर (प्रतिक्रिया) के बीच हाइपरटेक्स्ट प्रारूप में डेटा स्थानांतरित करने के लिए किया जाता है, HTTPS के मामले में भी ऐसा ही है, सिवाय इसके कि डेटा का स्थानांतरण एन्क्रिप्टेड प्रारूप में किया जाता है। तो यह कहा जा सकता है कि https पैकेट के हस्तांतरण के दौरान डेटा की व्याख्या या संशोधन से हैकर्स को विफल करता है।
  • टेलनेट: टेलनेट नियमों का एक सेट है जिसे एक सिस्टम को दूसरे सिस्टम से जोड़ने के लिए डिज़ाइन किया गया है। यहां जोड़ने की प्रक्रिया को दूरस्थ लॉगिन कहा जाता है। सिस्टम जो कनेक्शन के लिए अनुरोध करता है वह स्थानीय कंप्यूटर है, और जो सिस्टम कनेक्शन स्वीकार करता है वह रिमोट कंप्यूटर है।
  • गोफर: गोफर अलग-अलग साइटों से दस्तावेजों को खोजने, पुनर्प्राप्त करने और प्रदर्शित करने के लिए लागू नियमों का एक संग्रह है। गोफर क्लाइंट/सर्वर सिद्धांत पर भी काम करता है।

13. एपीआई

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

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

वेब-आधारित अनुप्रयोगों में आमतौर पर उपयोग किए जाने वाले चार प्रमुख प्रकार के एपीआई हैं:

  • सार्वजनिक एपीआई। एक सार्वजनिक एपीआई खुला है और किसी भी बाहरी डेवलपर या व्यवसाय द्वारा उपयोग के लिए उपलब्ध है। एक उद्यम जो एक व्यावसायिक रणनीति विकसित करता है जिसमें अन्य व्यवसायों के साथ अपने अनुप्रयोगों और डेटा को साझा करना शामिल है, एक सार्वजनिक एपीआई विकसित और पेश करेगा। सार्वजनिक एपीआई में आमतौर पर मध्यम प्रमाणीकरण और प्राधिकरण शामिल होता है। एक उद्यम सार्वजनिक एपीआई का उपयोग करने के लिए प्रति-कॉल लागत लगाकर एपीआई का मुद्रीकरण करना चाह सकता है।
  • सहयोगी एपीआई। एक भागीदार एपीआई, जो केवल विशेष रूप से चयनित और अधिकृत बाहरी डेवलपर्स या एपीआई उपभोक्ताओं के लिए उपलब्ध है, व्यवसाय-से-व्यावसायिक गतिविधियों को सुविधाजनक बनाने का एक साधन है। उदाहरण के लिए, यदि कोई व्यवसाय अपने ग्राहक डेटा को बाहरी CRM फर्मों के साथ चुनिंदा रूप से साझा करना चाहता है, तो एक भागीदार API आंतरिक ग्राहक डेटा सिस्टम को उन बाहरी पक्षों से जोड़ सकता है — किसी अन्य API उपयोग की अनुमति नहीं है। भागीदारों के पास ऐसे एपीआई तक पहुंचने के स्पष्ट अधिकार और लाइसेंस हैं। इस कारण से, पार्टनर एपीआई में आम तौर पर मजबूत प्रमाणीकरण, प्राधिकरण और सुरक्षा तंत्र शामिल होते हैं। उद्यम भी आमतौर पर ऐसे एपीआई का सीधे मुद्रीकरण नहीं करते हैं; भागीदारों को उनकी सेवाओं के लिए एपीआई उपयोग के बजाय भुगतान किया जाता है।
  • आंतरिक एपीआई। एक आंतरिक (या निजी) एपीआई केवल उद्यम के भीतर उपयोग के लिए है, व्यापार के भीतर सिस्टम और डेटा को जोड़ने के लिए। उदाहरण के लिए, एक आंतरिक एपीआई किसी संगठन के पेरोल और एचआर सिस्टम को जोड़ सकता है। आंतरिक एपीआई पारंपरिक रूप से कमजोर सुरक्षा और प्रमाणीकरण प्रस्तुत करते हैं – या बिल्कुल भी नहीं – क्योंकि एपीआई आंतरिक उपयोग के लिए अभिप्रेत हैं, और ऐसे सुरक्षा स्तरों को अन्य नीतियों के माध्यम से लागू माना जाता है। हालांकि, यह बदल रहा है, क्योंकि अधिक खतरे की जागरूकता और नियामक अनुपालन की मांग एक संगठन की एपीआई रणनीति को तेजी से प्रभावित करती है।
  • समग्र एपीआई। समग्र एपीआई आम तौर पर संबंधित या अन्योन्याश्रित संचालन के अनुक्रम को तैयार करने के लिए दो या दो से अधिक एपीआई को जोड़ती है। समग्र एपीआई जटिल या कसकर संबंधित एपीआई व्यवहारों को संबोधित करने के लिए फायदेमंद हो सकते हैं, और कभी-कभी व्यक्तिगत एपीआई पर गति और प्रदर्शन में सुधार कर सकते हैं।

14. डेटा प्रारूप

डेटा प्रारूप डेटा का उपयोग कैसे किया जाता है इसकी संरचनाएं हैं। सबसे अधिक उपयोग किए जाने वाले डेटा प्रारूपों में से कुछ हैं:

  • JSON: JSON जावास्क्रिप्ट ऑब्जेक्ट नोटेशन के लिए एक संक्षिप्त रूप है, एक खुला मानक प्रारूप है, जो हल्का और टेक्स्ट-आधारित है, जिसे स्पष्ट रूप से मानव-पठनीय डेटा इंटरचेंज के लिए डिज़ाइन किया गया है। यह एक भाषा-स्वतंत्र डेटा प्रारूप है। यह लगभग हर तरह की भाषा, फ्रेमवर्क और लाइब्रेरी का समर्थन करता है। 2000 के दशक की शुरुआत में, JSON को शुरू में डगलस क्रॉकफोर्ड द्वारा निर्दिष्ट किया गया था। 2013 में, JSON को ECMA-404 के रूप में मानकीकृत किया गया था, और RCF 8259 को 2017 में प्रकाशित किया गया था। JSON वेब पर डेटा के आदान-प्रदान के लिए एक खुला मानक है। यह वस्तुओं और सरणियों जैसी डेटा संरचनाओं का समर्थन करता है। इसलिए, JSON से डेटा लिखना और पढ़ना आसान है। JSON में, डेटा को की-वैल्यू पेयर में दर्शाया जाता है, और कर्ली ब्रेसिज़ ऑब्जेक्ट्स को होल्ड करते हैं, जहाँ प्रत्येक नाम के बाद एक कोलन का अनुसरण किया जाता है। कॉमा का इस्तेमाल की-वैल्यू पेयर को अलग करने के लिए किया जाता है। वर्गाकार कोष्ठक का उपयोग सरणियों को रखने के लिए किया जाता है, जहाँ प्रत्येक मान अल्पविराम से अलग होता है।
  • XML: XML का मतलब एक्सटेंसिबल मार्कअप लैंग्वेज है। यह एक टेक्स्ट-आधारित मार्कअप भाषा है जो मानक सामान्यीकृत मार्कअप लैंग्वेज (एसजीएमएल) से ली गई है। एक्सएमएल टैग डेटा की पहचान करते हैं और डेटा को प्रदर्शित करने के लिए उपयोग किए जाने वाले एचटीएमएल टैग की तरह इसे कैसे प्रदर्शित किया जाए, यह निर्दिष्ट करने के बजाय डेटा को स्टोर और व्यवस्थित करने के लिए उपयोग किया जाता है। XML निकट भविष्य में HTML को प्रतिस्थापित नहीं करने वाला है, लेकिन यह HTML की कई सफल विशेषताओं को अपनाकर नई संभावनाओं का परिचय देता है।
  • सीएसवी: अल्पविराम से अलग किए गए मान (सीएसवी) फ़ाइल एक सीमांकित टेक्स्ट फ़ाइल है जो मानों को अलग करने के लिए अल्पविराम का उपयोग करती है। फ़ाइल की प्रत्येक पंक्ति एक डेटा रिकॉर्ड है। प्रत्येक रिकॉर्ड में एक या अधिक फ़ील्ड होते हैं, जो अल्पविराम से अलग होते हैं। फ़ील्ड विभाजक के रूप में अल्पविराम का उपयोग इस फ़ाइल स्वरूप के नाम का स्रोत है। एक सीएसवी फ़ाइल आम तौर पर सादे पाठ में सारणीबद्ध डेटा (संख्याएं और पाठ) संग्रहीत करती है, इस स्थिति में प्रत्येक पंक्ति में समान संख्या में फ़ील्ड होंगे। सीएसवी फ़ाइल प्रारूप पूरी तरह से मानकीकृत नहीं है। फ़ील्ड को अल्पविराम से अलग करना नींव है, लेकिन डेटा में अल्पविराम या एम्बेडेड लाइन ब्रेक को विशेष रूप से संभालना पड़ता है। कुछ कार्यान्वयन ऐसी सामग्री को अस्वीकार करते हैं जबकि अन्य उद्धरण चिह्नों के साथ फ़ील्ड को घेरते हैं, जो फिर से डेटा में मौजूद होने पर इनसे बचने की आवश्यकता पैदा करता है। शब्द “सीएसवी” कई निकट से संबंधित सीमांकक-पृथक स्वरूपों को भी दर्शाता है जो अर्धविराम जैसे अन्य क्षेत्र सीमांकक का उपयोग करते हैं। इनमें टैब से अलग किए गए मान और स्पेस से अलग किए गए मान शामिल हैं। डेटा का हिस्सा नहीं होने की गारंटी देने वाला एक सीमांकक पार्सिंग को बहुत सरल करता है।

अभ्यास के लिए प्रश्न

  1. वेब ब्राउज़र का कार्य क्या है?
  2. प्लग-इन का क्या अर्थ है?
  3. एचटीएमएल का कार्य क्या है?
  4. सी एस एस का उपयोग किस लिए किया जाता है?
  5. एक ढांचा क्या है? बैक-एंड और फ्रंट-एंड फ्रेमवर्क में क्या अंतर है?
  6. डेटाबेस क्या है और इसका कार्य क्या है?
  7. क्लाइंट-साइड और फ्रंट-साइड स्क्रिप्टिंग में क्या अंतर है?
  8. इंटरनेट प्रोटोकॉल क्या है? इसका कार्य क्या है?
  9. एपीआई क्या है और इसका कार्य क्या है?

निष्कर्ष

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

अनुशंसित पठन

Leave a Comment