एप्लेट एक प्रकार का सॉफ़्टवेयर है जिसे एक बड़े प्रोग्राम, अक्सर एक वेब ब्राउज़र, के संदर्भ में निष्पादित करने के लिए डिज़ाइन किया गया है, जो समृद्ध, इंटरैक्टिव सुविधाएँ प्रदान करता है जो कोर प्रोग्राम स्वयं प्रदान नहीं करता है। जावा प्रोग्रामिंग भाषा में लिखे गए एप्लेट्स का उपयोग मुख्य रूप से नेटवर्क कंप्यूटिंग में किया जाता है। वे माउस क्लिक या कीस्ट्रोक्स जैसे उपयोगकर्ता इनपुट का जवाब दे सकते हैं, और वे उसी वेबपेज पर अन्य एप्लेट के साथ बातचीत भी कर सकते हैं।
एप्लेट की ऐतिहासिक पृष्ठभूमि
एप्लेट्स का इतिहास 1990 के दशक के मध्य का है, जब जावा प्रोग्रामिंग भाषा पहली बार सन माइक्रोसिस्टम्स द्वारा विकसित की गई थी। "एप्लेट" शब्द का प्रयोग पहली बार 1995 में किया गया था, जब जावा को इंटरनेट के लिए डिज़ाइन की गई एक नई प्रोग्रामिंग भाषा के रूप में दुनिया के सामने पेश किया गया था। अवधारणा एक छोटा एप्लिकेशन (इस प्रकार "एप्लेट" शब्द) प्रदान करना था जिसे एक HTML पेज के भीतर एम्बेड किया जा सकता था और एक वेब ब्राउज़र के भीतर चलाया जा सकता था।
एप्लेट्स पर विस्तार
जैसा कि ऊपर बताया गया है, एप्लेट छोटे जावा प्रोग्राम हैं जिन्हें HTML पेज में एकीकृत किया जा सकता है, क्लाइंट साइड पर चलाया जा सकता है और जावा वर्चुअल मशीन (JVM) द्वारा निष्पादित किया जा सकता है। एक एप्लेट किसी भी वेब ब्राउज़र में चल सकता है जो JVM का समर्थन करता है। इनका उपयोग वेब पेजों को अधिक गतिशील और मनोरंजक बनाने के लिए किया जाता है। उदाहरण के लिए, वे इंटरैक्टिव ग्राफिक्स प्रदर्शित कर सकते हैं, या उपयोगकर्ता इनपुट के आधार पर गणना कर सकते हैं।
एक एप्लेट का जीवन चक्र ब्राउज़र और JVM द्वारा नियंत्रित होता है। जीवन चक्र में चार चरण शामिल हैं: आरंभीकरण, प्रारंभ, रुकना और विनाश। एक एप्लेट अपना जीवन तब शुरू करता है जब इसे JVM द्वारा लोड और इंस्टेंट किया जाता है। फिर इसे आरंभ किया जाता है, प्रारंभ किया जाता है और वेब पेज पर प्रदर्शित किया जाता है। जब उपयोगकर्ता पृष्ठ से दूर चला जाता है, तो एप्लेट रोक दिया जाता है और फिर JVM द्वारा नष्ट कर दिया जाता है।
एक एप्लेट की आंतरिक कार्यप्रणाली
एक एप्लेट में जावा बाइटकोड होता है, जो प्रोग्राम का एक प्लेटफ़ॉर्म-स्वतंत्र प्रतिनिधित्व है, और यह ब्राउज़र में स्थापित JVM के अंदर चलता है। जब एक एप्लेट वाला वेब पेज लोड होता है, तो ब्राउज़र का जावा प्लग-इन एप्लेट के बाइटकोड को डाउनलोड करता है, एक जेवीएम शुरू करता है, और फिर जेवीएम के भीतर एप्लेट को लोड और निष्पादित करता है।
एप्लेट दस्तावेज़ ऑब्जेक्ट मॉडल (डीओएम) के माध्यम से वेब पेज के साथ इंटरैक्ट करता है और HTTP या अन्य इंटरनेट प्रोटोकॉल के माध्यम से उस सर्वर के साथ भी संचार कर सकता है जहां से इसे लोड किया गया था। हालाँकि, सुरक्षा कारणों से, इसे आमतौर पर सैंडबॉक्स किया जाता है और स्थानीय फ़ाइलों या कुछ सिस्टम संसाधनों तक पहुँचने से प्रतिबंधित किया जाता है।
एप्लेट की मुख्य विशेषताएं
- प्लेटफार्म स्वतंत्रता: एप्लेट जावा में लिखे गए हैं, जो प्लेटफ़ॉर्म-स्वतंत्र है। वे किसी भी डिवाइस पर चल सकते हैं जिसमें JVM को सपोर्ट करने वाला ब्राउज़र हो।
- नेटवर्क कनेक्टिविटी: एप्लेट्स नेटवर्क पर संचार कर सकते हैं, जिससे वे नेटवर्क अनुप्रयोगों का हिस्सा बन सकते हैं।
- सैंडबॉक्स्ड सुरक्षा: वे सिस्टम संसाधनों तक अनधिकृत पहुंच को रोकने के लिए एक सुरक्षा सैंडबॉक्स के भीतर काम करते हैं, इस प्रकार उपयोगकर्ता सुरक्षा सुनिश्चित करते हैं।
- समृद्ध उपयोगकर्ता इंटरफ़ेस: एप्लेट जटिल ग्राफिकल यूजर इंटरफेस (जीयूआई) बना सकते हैं और सहज एनिमेशन तैयार कर सकते हैं, जिससे वे इंटरैक्टिव एप्लिकेशन बनाने के लिए उपयुक्त हो जाते हैं।
एप्लेट्स के प्रकार
मुख्यतः दो प्रकार के एप्लेट होते हैं:
-
स्थानीय एप्लेट्स: डाउनलोड होने के बाद इन एप्लेट्स को इंटरनेट से कनेक्ट होने की आवश्यकता नहीं है। वे उपयोगकर्ता के ब्राउज़र के भीतर चलते हैं और सर्वर से कनेक्ट होने की आवश्यकता के बिना कार्य करते हैं।
-
रिमोट एप्लेट्स: इन एप्लेट्स को निरंतर इंटरनेट कनेक्टिविटी की आवश्यकता होती है। वे अपने कार्य करने के लिए एक सर्वर के साथ संचार करते हैं।
एप्लेट का उपयोग और संबंधित समस्याएँ
एप्लेट का उपयोग आमतौर पर वेब पेजों पर इंटरैक्टिव सुविधाएँ प्रदान करने के लिए किया जाता है, जैसे गेम, कैलकुलेटर, एनिमेशन और इंटरैक्टिव मानचित्र। इनका उपयोग ऑनलाइन वोटिंग, ई-कॉमर्स और रिमोट डेस्कटॉप एप्लिकेशन जैसे अधिक जटिल कार्यों के लिए भी किया जा सकता है।
हालाँकि, कई समस्याओं के कारण पिछले कुछ वर्षों में एप्लेट्स का उपयोग कम हो गया है:
- सुरक्षा समस्याएं: सैंडबॉक्स में चलने के बावजूद, एप्लेट्स का उपयोग अतीत में दुर्भावनापूर्ण उद्देश्यों के लिए किया गया है, जिससे कई उपयोगकर्ता और संगठन उनसे सावधान हो गए हैं।
- प्रदर्शन: चूँकि एप्लेट क्लाइंट-साइड पर चलते हैं, वे लोड करने में धीमे हो सकते हैं और महत्वपूर्ण सिस्टम संसाधनों का उपभोग कर सकते हैं।
- जावा पर निर्भरता: उपयोगकर्ताओं के पास अपने ब्राउज़र में जावा रनटाइम एनवायरनमेंट (जेआरई) स्थापित और ठीक से कॉन्फ़िगर होना चाहिए, जो गैर-तकनीकी उपयोगकर्ताओं के लिए एक जटिल कार्य हो सकता है।
समान शर्तों के साथ एप्लेट की तुलना
यहां समान अवधारणाओं वाले एप्लेट की तुलना दी गई है:
अवधि | परिभाषा | कार्यान्वयन |
---|---|---|
एप्लेट | HTML पृष्ठ में सन्निहित एक छोटा अनुप्रयोग, जो वेब ब्राउज़र में JVM द्वारा चलाया जाता है | ग्राहक की ओर |
सर्वलेट | एक जावा प्रोग्राम जो सर्वर पर चलता है, आमतौर पर गतिशील वेब सामग्री उत्पन्न करने के लिए उपयोग किया जाता है | सर्वर साइड |
जावास्क्रिप्ट | वेब पेजों के लिए एक स्क्रिप्टिंग भाषा, जो ब्राउज़र के जावास्क्रिप्ट इंजन द्वारा संचालित होती है | ग्राहक की ओर |
एप्लेट से संबंधित भविष्य के परिप्रेक्ष्य और प्रौद्योगिकियाँ
HTML5, CSS3 और जावास्क्रिप्ट जैसी आधुनिक वेब प्रौद्योगिकियों के उदय के कारण एप्लेट्स का भविष्य अनिश्चित है, जो उपयोगकर्ताओं को JVM स्थापित करने या जावा की सुरक्षा समस्याओं से निपटने की आवश्यकता के बिना समान कार्यक्षमता प्रदान करते हैं।
हालाँकि, अभी भी ऐसे क्षेत्र हैं जहां एप्लेट्स का दबदबा है, जैसे जटिल अनुप्रयोग जिनके लिए जावा की पूरी शक्ति की आवश्यकता होती है। इसके अलावा, जावा वेब स्टार्ट तकनीक सीधे वेब ब्राउज़र से पूर्ण विशेषताओं वाले जावा एप्लिकेशन लॉन्च करने की अनुमति देती है, जो एप्लेट जैसी कार्यक्षमता का पुनरुत्थान ला सकती है।
एप्लेट्स और प्रॉक्सी सर्वर
जबकि एप्लेट और प्रॉक्सी सर्वर अलग-अलग प्रौद्योगिकियां हैं, वे कुछ स्थितियों में बातचीत कर सकते हैं। एक प्रॉक्सी सर्वर एक एप्लेट और उस सर्वर के बीच कनेक्शन में मध्यस्थता कर सकता है जिसके साथ वह संचार करता है, कैशिंग, फ़िल्टरिंग और बढ़ी हुई सुरक्षा जैसे लाभ प्रदान करता है। हालाँकि, यह ध्यान रखना महत्वपूर्ण है कि एप्लेट को प्रॉक्सी सर्वर का समर्थन करने के लिए डिज़ाइन किया जाना चाहिए और उपयोगकर्ता के ब्राउज़र को प्रॉक्सी सर्वर का उपयोग करने के लिए कॉन्फ़िगर किया जाना चाहिए।
सम्बंधित लिंक्स
एप्लेट्स के बारे में अधिक जानकारी के लिए, इन संसाधनों पर विचार करें: