ASP.NET Ajax, jQuery और जावास्क्रिप्ट के बारे में उलझन [बंद]


15

कल, मैंने अपनी ASP.NET 4 पुस्तक से ASP.NET Ajax और jQuery पर कुछ अध्याय पढ़े और मैंने उन रूपरेखाओं को काफी रोचक पाया और उनके बारे में अधिक जानने का निर्णय लिया।

आज, मैंने अजाक्स और जावास्क्रिप्ट पर लाइब्रेरी से कुछ किताबें उधार लीं। ऐसा लगता है कि ASP.NET Ajax Ajax से अलग है और jQuery "नए" जावास्क्रिप्ट की तरह लगता है।

क्या इसका मतलब है कि मैं जावास्क्रिप्ट को छोड़ कर सीधे jQuery सीख सकता हूं?

दूसरी ओर, मैंने जो गैर-ASP.NET Ajax पुस्तक उधार ली है, वह केवल क्लाइंट साइड वेब प्रोग्रामिंग पर लागू होती है और जो मैं ASP.NET Ajax से सीखी है, उससे काफी अलग है। अगर मैं ASP.NET डेवलपर हूं, तो मुझे लगता है कि मुझे ग्राहक पक्ष Ajax के बजाय ASP.NET Ajax के साथ रहना चाहिए? PHP के बारे में क्या? क्या ASP.NET Ajax के समान "PHP अजाक्स" है?

ऐसा नहीं है कि मैं अन्य उपकरणों को सीखने के लिए आलसी हूं, लेकिन मैं सिर्फ सही लोगों पर ध्यान केंद्रित करना चाहता हूं।


3
+1 अजीब बात है कि वेब प्रोग्रामिंग दुनिया के कुछ अर्थों में आपका प्रश्न कैसे सारांशित करता है।
गिदोन

जवाबों:


31

यह एक जटिल विषय है लेकिन यहाँ मेरा ध्यान भटकाने की कोशिश है कि ये सभी चीजें क्या हैं और कैसे संबंधित हैं।

AJAX: यह एक अवधारणा है जिसमें संपूर्ण पृष्ठ को पुनः लोड किए बिना डेटा को अतुल्यकालिक रूप से एक वेब अनुप्रयोग में शामिल करना है। यह Google मेल जैसे डायनेमिक UI के लिए अनुमति देता है जो डेस्कटॉप एप्लिकेशन की तरह कार्य करता है लेकिन ब्राउज़र में चलता है।

ASP.NET AJAX: यह Microsoft द्वारा लिखा गया एक पुस्तकालय है जो ASP.NET पृष्ठभूमि वाले डेवलपर्स के लिए AJAX अवधारणा को सुलभ बनाने का प्रयास करता है। यह ऐसे तरीकों को प्रदान करता है जो .NET फ्रेमवर्क विधियों जैसे String.Format और अन्य के समान हैं। यह JQuery के साथ कुछ ओवरलैप है लेकिन वे दोनों एक साथ सद्भाव में इस्तेमाल किया जा सकता है क्योंकि उनके पास अलग-अलग ताकत और कमजोरियां हैं। यह याद रखना महत्वपूर्ण है कि यह एक क्लाइंट-साइड लाइब्रेरी है और वास्तव में ASP.NET पर निर्भरता नहीं है। आप ASP.NET AJAX का उपयोग किसी भी सर्वर-साइड तकनीक के साथ कर सकते हैं।

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

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

अब, इस सवाल के रूप में कि आपको ASP.NET डेवलपर के रूप में क्या सीखना चाहिए। मैं ASP.NET AJAX और jQuery दोनों की कार्यक्षमता से परिचित होने की सलाह दूंगा। Microsoft दोनों को समर्थन करता है, और दोनों को वीएस 2010 के साथ शामिल किया गया है। उनके पास अलग-अलग ताकत और कमजोरियां हैं और यदि आप समझते हैं कि आप क्या हैं तो उनका उपयोग करने के साथ आप अधिक प्रभावी होंगे।

आपको ASP.NET वेबसाइटों को करने के लिए AJAX का उपयोग करने की आवश्यकता नहीं है, लेकिन यदि आप करते हैं तो आपकी वेबसाइटें अधिक शक्तिशाली और अधिक उपयोगकर्ता के अनुकूल होंगी। और जब आप AJAX प्रभावी है और जब यह नहीं है, तो आप एक बेहतर वेब डेवलपर होंगे।

ओह, और UpdatePanels से दूर रहें। AJAX के लिए MS का पहला उत्तर था, लेकिन वे आम तौर पर खराब होते हैं और बहुत सारी अवधारणाओं के खिलाफ जाते हैं जो AJAX को अच्छा बनाते हैं। वे आपको एक अल्पकालिक लाभ देते हैं, लेकिन दीर्घावधि में वे मेरे अनुभव में एक दुःस्वप्न हैं।


3
केवल एक चीज जो मैं जोड़ूंगा वह यह है कि ASP.NET AJAX ग्राहक के विवरण के कुछ विवरण भी छिपाता है। लाइब्रेरी अभी भी सभी क्लाइंट-साइड है, लेकिन यह सभी विवरणों को जानने के बिना क्लाइंट और सर्वर साइड को लिंक करने के लिए सुविधाजनक तरीके प्रदान करता है। यदि आप वास्तव में वेब प्रोग्रामिंग के बारे में बेहतर समझ चाहते हैं, तो आप jQuery का उपयोग करना शुरू कर सकते हैं और अपने ASP.NET तरीकों में कॉल करके यह समझ सकते हैं कि यह कैसे काम करता है।
ब्रायन रेहबीन

1
+1 बहुत अच्छा सारांश। माइनर क्विबबल jQuery को VS2008 के साथ
कॉनराड फ्रैक्स

@ कोनराड फ्रॉक्स बहुत सही है। लेकिन वास्तव में आजकल कचरे के उस पुराने टुकड़े का उपयोग कौन करता है? :-) (सिर्फ एक चुटकुला मुझे नहीं भड़काता)
RationalGeek

मैं अपने फ़्लैमेथ्रो को भी प्राप्त करने वाला था। ताज्जुब की बात है कि मैं 2003 :(, 2005: |, और 2010 :) का उपयोग अपने दिन-प्रतिदिन के काम में करता हूं, लेकिन 2008 तक नहीं
कॉनराड फ्राई

आपका JQuery पैराग्राफ कम से कम जावास्क्रिप्ट का उल्लेख कर सकता है! इसके अलावा,
टेक के

5

नहीं, कोई PHP AJAX नहीं है।

यदि आपको ग्राहक विकास करना है तो पहले शुद्ध जावास्क्रिप्ट सीखें। फिर jQuery सीखें। यदि आप सिर्फ jQuery के साथ शुरू करते हैं तो आप महत्वपूर्ण जावास्क्रिप्ट अवधारणाओं को याद करेंगे और आप मूल रूप से कट और पेस्ट प्रोग्रामिंग करेंगे।

जावास्क्रिप्ट और jQuery के सार्वभौमिक और मानकीकृत उपकरण हैं जिनका उपयोग लगभग किसी भी HTML विकास में किया जा सकता है। PHP प्रोग्रामर क्लाइंट चीजों को करते समय js + jq का उपयोग करते हैं, रूबी प्रोग्रामर js + jq आदि का उपयोग करते हैं।

अब, जहाँ तक मुझे पता है, ASP.NET AJAX भी एक उच्च स्तरीय JavScript फ्रेमवर्क है जो ASP.NET के साथ काम करने के लिए अनुकूल है, क्योंकि ASP.NET, जैसा कि आप शायद जानते हैं, यह स्वयं HTML से एक बहुत ही हाइट एब्सट्रैक्शन है। इसलिए उनके पास एक विशिष्ट जेएस चीजें हैं। मूल रूप से यह सर्वर-साइड ASP.NET घटकों के साथ अच्छा खेलने और उन्हें बढ़ाने के लिए मानसिक रूप से है। इसके अलावा, ASP.NET AJAX बार जहां यह नहीं था में शुरू किया था कि स्पष्ट है कि jQuery वास्तविक मानक किया जाएगा। या, यह स्पष्ट था, लेकिन Microsoft के लिए नहीं ;-) - वे वास्तव में अपने स्वयं के मध्य-स्तरीय जेएस लाइब्रेरी बनाने की योजना बना रहे थे (जैसे कि jQuery है)।

ईमानदारी से, मैं एक Microsoft लड़का नहीं हूं और जब तक मैं आपके नियोक्ता / परियोजना को ASP.NET AJAX की आवश्यकता नहीं है, तब तक मैं निश्चित रूप से शुद्ध जावास्क्रिप्ट + jQuery से चिपके रहूंगा। यह आपको क्लाइंट-साइड प्रोग्रामिंग का सबसे सार्वभौमिक रूप से मान्यता प्राप्त ज्ञान देगा।


4

यहाँ संक्षेप में सौदा है

(1) JQuery जावास्क्रिप्ट को प्रतिस्थापित नहीं करता है, यह एक पुस्तकालय है जो सामान्य जावास्क्रिप्ट कार्यों को सरल करता है। कोई भी JQuery कोड वास्तव में जावास्क्रिप्ट में लिखा जाता है।

(2) AJAX सिर्फ जावास्क्रिप्ट कोड है जो वेब पेज क्लाइंट-साइड में हेरफेर करता है और अक्सर पूरे पेज को फिर से लोड किए बिना सर्वर से सामग्री को नीचे खींचता है। AJAX के कई "संस्करण" नहीं हैं।

(३) उपरोक्त # २ के बावजूद। ASP.NET और JQuery दोनों के पास पुस्तकालय या उपकरण हैं जो AJAX संचालित वेबसाइट बनाने के कार्य को सरल बनाते हैं। कई अन्य उपकरण भी हैं जो ऐसा करते हैं। यह सब एक ही AJAX है, इसे उत्पन्न करने के अलग-अलग तरीके, या लाइब्रेरी इसे एनकैप्सुलेट करते हैं।

(४) आपको कौन सी लाइब्रेरी सीखनी चाहिए? यह ज्यादातर प्राथमिकता वाली बात है। यदि आप वेब नियंत्रणों का उपयोग करना पसंद करते हैं और ASP.NET के साथ ड्रैग-ड्रॉप वेब डेवलपमेंट करते हैं, तो आप ऐसा करने के लिए ASP.NET नियंत्रणों का उपयोग करना पसंद कर सकते हैं। मैं एक ASP.NET डेवलपर भी हूं, लेकिन मैं JQuery का उपयोग करना पसंद करता हूं क्योंकि यह अक्सर मुझे अधिक महीन दानेदार नियंत्रण देता है, भले ही यह कभी-कभी थोड़ा अधिक काम कर सकता है । इसके अलावा, यदि आप JQuery तरीका सीखते हैं, तो आप इसे PHP सहित किसी भी मंच पर उपयोग कर सकते हैं।


3

AJAX करने के कई तरीके हैं, और यदि आप ASP.NET कर रहे हैं, ASP.NET AJAX उन तरीकों में से एक है। हाल के वर्षों में, मैंने व्यक्तिगत रूप से इसे jQuery के पक्ष में करने और AJAX के इसके कार्यान्वयन से दूर कर दिया है।

अगर मैं ASP.NET डेवलपर हूं तो मुझे लगता है कि मुझे ग्राहक पक्ष AJAX सही के बजाय ASP.NET AJAX के साथ रहना चाहिए?

ASP.NET AJAX अभी भी क्लाइंट-साइड AJAX है। ASP.NET AJAX द्वारा आपके लिए बनाई गई (भारी) जावास्क्रिप्ट लाइब्रेरी की तलाश करें (आप ScriptResource.axd या WebResource.axd में चलते समय उन्हें देखेंगे।

इसका मतलब है कि मैं जावास्क्रिप्ट को छोड़ सकता हूं और सीधे jQUERY सीख सकता हूं?

jQuery सिर्फ जावास्क्रिप्ट कार्यों का एक पुस्तकालय है। JQuery का सही उपयोग करने के लिए आपको अभी भी जावास्क्रिप्ट की समझ की आवश्यकता होगी। jQuery कुछ पेचीदा जावास्क्रिप्ट को दूर करता है, इसलिए jQuery, मेरी राय में, जावास्क्रिप्ट का उपयोग करना और सीखना शुरू करने का एक अच्छा तरीका है (हालांकि आप इसका उपयोग शुरू करने से पहले कम से कम कुछ जावास्क्रिप्ट जानते होंगे )।

क्या ASP.NET AJAX के समान "PHP AJAX" है?

वहाँ एक हैं बहुत आप के लिए दूर सार AJAX के लिए जावास्क्रिप्ट पुस्तकालयों की। jQuery उनमें से सिर्फ एक है, लेकिन यह बहुत लोकप्रिय है, और बहुत मजबूत है।


0

http://ajaxpatterns.org/PHP_Ajax_Frameworks विभिन्न PHP Ajax फ्रेमवर्क को सूचीबद्ध करता है, हालांकि मुझे नहीं पता कि वे ASP.Net AJAX की तरह कितने एकीकृत हैं। अधिकांश AJAX फ्रेमवर्क का हिस्सा कुछ क्लाइंट-साइड कोड को शामिल करेगा क्योंकि AJAX का J जावास्क्रिप्ट के लिए है।

Microsoft को ASP.Net AJAX में डालने से पहले AJAX की कार्यक्षमता प्राप्त करने के लिए अन्य कार्यान्वयन थे जहाँ Anthem.Net एक उदाहरण है जिसका उपयोग मैंने वर्षों पहले किया था।


0

जावास्क्रिप्ट एक क्लाइंट साइड व्याख्या की गई भाषा है जो आपको ब्राउज़र पेज घटकों पर नियंत्रण देती है; यानी HTML डॉक्यूमेंट और ब्राउजर इसे सेल्फ। jQuery क्रॉस ब्राउज़र जावास्क्रिप्ट फ़ंक्शंस की एक लाइब्रेरी है जो डोम के साथ बातचीत करना आसान बनाता है।

ASP.NET और PHP दोनों सर्वर साइड स्क्रिप्टिंग लैंग्वेज हैं, जहाँ ASP.NET बिल्ट पेज को .NET असेंबली DLL में संकलित किया जाता है, ASP.NET JIT (जस्ट इन टाइम) कंपाइलर द्वारा, PHP में बने पेज की व्याख्या की जाती है।

तकनीकी रूप से, ASP.NET वास्तव में एक भाषा नहीं है, यह एक फ्रेमवर्क और रन टाइम है, यह एपीआई को उजागर करता है जिसे C # या VB.NET का उपयोग करके एक्सेस किया जा सकता है। इस प्रकार ASP.NET ऐप विकसित करने के लिए, आपको C # या VB.NET को जानना होगा।

अपने अनुभव से, मैं सलाह दूंगा कि आप समय निकालें और जावास्क्रिप्ट सीखें, फिर jQuery सीखने के लिए आगे बढ़ें। बेशक आप क्रॉस लर्निंग भी कर सकते हैं, यानी jQuery और कोर जावास्क्रिप्ट दोनों।

AJAX एक ग्राहक पक्ष अतुल्यकालिक प्रोग्रामिंग तकनीक है, जिसका उपयोग jQuery और ASP.NET AJAX दोनों में किया जा सकता है। ASP.NET AJAX Microsoft AJAX तकनीक का कार्यान्वयन है।


-5

क्लाइंट साइड भाषाओं का उपयोग अनुरोधों के सर्वर लोड को कम करने के लिए किया जाता है।

जावास्क्रिप्ट क्लाइंट साइड स्क्रिप्टिंग लैंग्वेज है और Jquery जावास्क्रिप्ट का एक फ्रेमवर्क है और वैकल्पिक है। Js, jquery आपके सिस्टम में ही काम करता है और पासवर्ड सत्यापन, वेब पेज में एनीमेशन आदि जैसे कार्य करता है, वे डेटाबेस तक नहीं पहुँचते हैं।

डेटाबेस MYSQL, ORACLE होगा और वेब होस्ट में मौजूद होगा; ASP, PHP सर्वर साइड स्क्रिप्टिंग लैंग्वेज हैं। डेटाबेस तक पहुंचने के लिए आप एएसपी या पीएचपी का उपयोग कर सकते हैं, लेकिन वेबसाइटों पर काम करने के लिए एसक्यूएल भी आवश्यक है।


1
ajax और jquery भाषाएँ नहीं हैं
Raynos

1
पासवर्ड सत्यापन क्लाइंट पर भी नहीं किया जाता है। यह सिर्फ एक कल्पना है "आपका पासवर्ड गलत है", लेकिन यह अभी भी पास हो सकता है।
फ्लोरियन मार्गाइन

@ फ़्लोरियन मार्गेन, आप पासवर्ड को मान्य कर सकते हैं और जावास्क्रिप्ट अधिकार का उपयोग करके फ़ॉर्म जमा कर सकते हैं।
पांडु

भयानक, बुरी तरह से निर्मित जवाब।
ओज

1
मुझे सहमत होना होगा, जब मैंने इस पर समीक्षा के लिए ठोकर खाई, तो इससे मुझे कम से कम सुधरने की कोशिश करने में काफी मदद मिली। इसके पहले से ही -3 वोट के तहत शायद इसलिए किसी का ध्यान नहीं जाएगा (यहां तक ​​कि वैचारिक त्रुटियों को ठीक करने के लिए लेखक के लिए भी बदतर है), लेकिन कम से कम मुझे उम्मीद है कि अब यह अधिक पठनीय है और लेखक को दिखाएगा कि वह लिखने के बारे में कैसे जा सकता था। जवाब।
Oeufcoque Penteano
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.