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