मानते हुए
- व्यावसायिक पृष्ठभूमि
- सामुदायिक समर्थन
- उपलब्ध एक्सटेंशन
- सुविधाओं का डिफ़ॉल्ट सेट
- उपयोग की सादगी
- और विश्वसनीयता
आप एक से दूसरे को क्यों पसंद करते हैं?
मानते हुए
आप एक से दूसरे को क्यों पसंद करते हैं?
जवाबों:
मैं अपनी जानकारी जोड़ने का प्रयास करूँगा।
जैसा कि मैं इसे समझता हूं, Google क्लोजर न केवल एक और जेएस लाइब्रेरी है, बल्कि यह टूल्स का एक सेट है जो आपको अपने जेएस कोड को ऑप्टिमाइज़ करने की अनुमति देगा। JQuery के साथ काम करने से आपको अच्छे उपकरण और हल्के पुस्तकालय मिलते हैं, लेकिन यह आपके स्वयं के कोड को छोटा नहीं करता है। बंद संकलक होगा। बंद निरीक्षक भी उपयोगी हो सकता है कभी कभी न्यूनतम किया कोड के रूप में मूल की जगह किसी दूसरे व्यवहार है, और डिबग करने के लिए एक दर्द है। यह फायरबग और समर्थन इकाई परीक्षणों के साथ एकीकृत होता है , जो आजकल दोनों डेवलपर्स के सबसे अच्छे दोस्त हैं।
मुझे लगता है कि किसी भी नए पुस्तकालय बनाम एक अच्छी तरह से स्थापित वीएस के रूप में, यह jQuery के एक्सटेंशन और ट्यूटोरियल की उपलब्धता की कमी होगी। हालांकि, Google द्वारा धकेले जाने से यह सुनिश्चित होना चाहिए कि समर्थन और विश्वसनीयता दोनों बहुत अच्छे होंगे। वर्तमान प्रलेखन और ट्यूटोरियल दोनों बहुत अच्छे लगते हैं।
क्लोजर की विशेषताएं सभ्य दिखती हैं, हालांकि, और इसकी मॉड्यूलर वास्तुकला भी आशाजनक है। मुझे लगता है कि Google लंबे समय से आंतरिक रूप से इसका उपयोग कर रहा है, जिसका अर्थ है कि आप सभी बुनियादी सुविधाओं (और अधिक) को लागू करने की उम्मीद कर सकते हैं, और शायद बहुत ही अनुकूलित और स्केलेबल तरीके से। वे इसे जावास्क्रिप्ट के एसटीएल के रूप में पेश करने की कोशिश कर रहे हैं, इसलिए उन्हें इसे पॉलिश करना चाहिए था।
सुविधाओं को अधिक बारीकी से देखने के बाद, ऐसा लगता है कि यह jQuery के रूप में मौजूदा पुस्तकालयों की तुलना में वेब-अनुप्रयोग विकास के लिए एक कदम आगे हो सकता है। यह अनुमान लगाता है कि यह Google पर आंतरिक विकास को लाभ देता है, लेकिन ऑनलाइन राज्य का पता लगाने ( goog.events.OnlineHandler ) जैसी चीजें , ब्राउज़र इतिहास में AJAX अनुरोधों और जेएस कार्यों का आसान एकीकरण ( goog.History देखें ), या महान विगेट्स के दिग्गज। वे प्रदान करते हैं ( goog.ui पैकेज देखें ) हम सभी को और भी भयानक वेबप्स बनाने में मदद कर सकता है;)
यह टेम्पलेट सुविधाओं के साथ आता है जो जावा के साथ एकीकृत होता है (जिन्होंने जीडब्ल्यूटी कहा था ?), इसलिए यह क्लोजर के लिए एक और प्लस भी हो सकता है।
अंत में, यह उपयोग करने के लिए बहुत आसान लग रहा है। कम $ jQuery फ़ंक्शन की तुलना में सिंटैक्स थोड़ा अधिक हो सकता है, लेकिन आईडीई और ऑटो-पूरा होने के साथ, यह एक वास्तविक समस्या नहीं है। इसके अलावा, मैं कहूंगा कि हम Google से आने वाले ग्रहण की तरह आईडीई में एक अच्छे एकीकरण की उम्मीद कर सकते हैं।
संपादित करें: अनुरोध के रूप में, मुझे GWT संदर्भ के बारे में कुछ शब्द कहने दें। Google वेब टूलकिट एक जावा पुस्तकालय है जो AJAX- सक्षम वेब इंटरफेस बनाने की अनुमति देता है और जो आवश्यक जावास्क्रिप्ट कोड उत्पन्न (और अनुकूलन) करता है। जैसा कि Google क्लोजर उन टेम्प्लेट्स को बनाने की अनुमति देता है जो क्लाइंट- और सर्वर-साइड (जावास्क्रिप्ट और जावा का उपयोग करके) दोनों का उपयोग कर सकते हैं, मेरा अनुमान है कि यह जल्द ही संयुक्त रूप से उपयोग करना संभव होगा (यदि यह पहले से ही मामला नहीं है)।
एपीआई पर अपने संक्षिप्त रूप में मुझे लगता है कि हड़ताली होने के लिए jQuery और क्लोजर के बीच अंतर है।
jQuery मूल रूप से क्रॉस-ब्राउज़र तरीके से कई लगातार संचालन करने का एक सरल तरीका है।
क्लोजर एक फ्रेमवर्क है जो बहुत नया है, इसमें वे <canvas>
टैग का उपयोग करने के लिए एक क्रॉस-ब्राउज़र तरीका प्रदान करते हैं , उदाहरण के लिए, और उन्होंने कई अन्य ईवेंट जोड़े हैं।
इसलिए, यह जो हम आम तौर पर जावास्क्रिप्ट के साथ करते हैं उस पर जोड़ रहे हैं, वे कई ऑपरेशन ले रहे हैं जो लोग करना चाहते हैं और उन्हें एपीआई में डाल रहे हैं।
उदाहरण के लिए, उनके पास यह बताने के लिए एक घटना है कि क्या ऑनलाइन राज्य बदल गया है। तो आप बता सकते हैं कि क्या सिस्टम ऑनलाइन है।
उनके पास जावास्क्रिप्ट फ़ंक्शन हैं जो Google गियर्स जैसे टूल का उपयोग करते हैं, जो इस तथ्य के साथ जारी है कि उन्होंने जावास्क्रिप्ट के साथ क्या किया जा सकता है।
सभी परिवर्तनों को पचाने में मुझे कुछ दिन लगेंगे, लेकिन मैं देख सकता हूं कि इससे वेब अनुप्रयोगों पर बड़ा प्रभाव पड़ सकता है जिन्हें विकसित किया जा सकता है।
क्लोजर लाइब्रेरी का सबसे बड़ा फायदा यह है कि इसे क्लोजर कंपाइलर के लिए डिज़ाइन किया गया है। यह जावास्क्रिप्ट विकास के लिए पूरी तरह से नई संभावनाओं को खोलता है ...
संकलक में कई शांत विशेषताएं हैं:
जानकारी के लिए यहाँ देखें: http://blog.klokantech.com/2010/12/closure-compiler-for-openlayers-3x.html
संपादित करें : इस YouTube वीडियो पर एक नज़र डालें, यह Google बंद के बारे में कुछ सवालों के बेहतर जवाब दे सकता है।
संभवतः गूगल क्लोजर के बारे में जानकारी के सबसे अच्छे स्रोत प्रोजेक्ट चर्चा समूह , विकी, डॉक्स पेज, डेमो और माइकल बोलिन द्वारा अभी तक अधूरी किताब है जो अब सफारी बुक्स साइट से उपलब्ध है।
एक बात जो मैं अभी बता सकता हूं - closure
बनाम के लिए एक स्टेटर लर्निंग कर्व है jQuery
लेकिन लाइब्रेरी की विशालता, स्पष्ट संगठन और कंपाइलर और टेंपलेटिंग टूल के साथ एक साथ उपयोग करने के लाभ के कारण यह अच्छी तरह से इसके लायक हो सकता है।
closure
माइकल बोलिन के अनुसार, उस संबंध में पुस्तकालय अधिक पसंद dojo
है jQuery
, और कुछ अवधारणाओं को उधार लिया dojo
गया था।
google क्लोजर कंपाइलर JSDoc
प्रलेखन प्रणाली का उपयोग करता है जो एक साथ (यदि प्रोग्रामर द्वारा सही तरीके से बनाया गया है) प्रलेखन प्रदान करता है और संकलन समय पर कई त्रुटियों को पकड़ने में सक्षम बनाता है।
जबकि फ़ंक्शन नाम क्रिया की तुलना में अधिक क्रियाशील होते हैं jQuery
, संकलक कोड को सिकोड़ता है (विभिन्न अनुकूलन युक्तियों का उपयोग करके) और प्रकार की जाँच से कोड को डीबग करने में काफी समय की बचत होगी, इसलिए लंबे नामों में टाइप करना संभवत: मुद्दा नहीं है। एक ही समय में नाम पठनीयता जोड़ते हैं।
लाइब्रेरी quirks मोड में चलने वाले ब्राउज़र का समर्थन करती है ताकि स्क्रिप्ट को "quirky" html का उपयोग करके अन्य साइटों द्वारा एम्बेड किया जा सके
पुस्तकालय के साथ काम करता है (लेकिन निर्भर नहीं करता है) एक जावास्क्रिप्ट टेंपलेटिंग सिस्टम कहा जाता है soy
जो सामग्री के साथ दस्तावेजों को भरने को सरल करता है।
जैसे कि लाइब्रेरी के एक समर्पित घटक का उपयोग करके स्ट्रिंग-आधारित प्रश्नों के साथ jQuery
Google closure
वर्चस्व की संरचना की अनुमति देता है।
closure
पुस्तकालय डॉट-सीमांकित नामस्थानों पर अधिक निर्भर करता है Java
- जैसे एक बहुत मजबूत संगठनात्मक विशेषता।
ऐसे नामस्थानों का उपयोग करने से अप्रयुक्त कोड में ओवरहेड हो जाएगा, लेकिन संकलित कोड में उन चीजों को लघु चर नामों से बदल दिया जाता है।
like jQuery google closure allows traversing dom structure with the string-based queries using a dedicated component of the library.
क्या आप मुझे इससे संबंधित कुछ दस्तावेज़ीकरण से जोड़ सकते हैं?
goog.dom.DomHelper
, लेकिन मैं व्यक्तिगत रूप से jQuery के बराबर एक क्वेरी फ़ंक्शन नहीं देखता। @ विदेश: क्या आप हमें अधिक जानकारी दे सकते हैं?
मैंने अभी Google बंद के बारे में एक बहुत ही बढ़िया लेख पोस्ट किया है जो इस सवाल का जवाब देता है ।
... बंद करो नियम! ^ _ ^
शायद मुझे jQuery नहीं मिल रहा है, लेकिन मैंने वहां एक वास्तविक UI विजेट संग्रह नहीं देखा है (वहाँ प्लगइन्स हैं, हाँ, लेकिन आप कभी नहीं जानते कि वे कितने अच्छी तरह से परीक्षण किए गए हैं और अक्सर कोई स्पष्ट विजेता नहीं होता है और / या प्लगइन का अभाव होता है प्रलेखन)।
अन्य चीजों के बीच क्लोजर है, एक विजेट संग्रह (डेमो टैब देखें), जिसमें जीमेल में उपयोग किए गए , इमेजलेस बटन शामिल हैं ।
आम तौर पर, रिलीज के हिस्से के रूप में इसे अधिक कार्यक्षमता लागू किया गया है। यह एक बड़ी बात नहीं हो सकती है, लेकिन मैं jQuery प्लगइन्स के समुद्र से परेशान हो जाता हूं, जब मैं एक अजाक्स इतिहास मॉड्यूल या स्वत: पूर्ण के रूप में सरल कुछ ढूंढ रहा हूं।
कुल मिलाकर यह एक विशाल पुस्तकालय है + औजारों का सेट और मैं इससे परिचित हो जाऊंगा कि क्या उपलब्ध है।
मैं खुले स्रोत समुदाय में Google के अधिकांश योगदानों की सराहना करता हूं और मुझे यकीन है कि इसे कुछ अच्छा सामान मिला है, लेकिन कुल मिलाकर मुझे क्लोजर भारी, अधिक सूखा, और असंगत लगता है। यदि आपको जावा में सब कुछ चालू करना चाहिए, तो मुझे लगता है कि यह बिल्कुल सही है।
संपादित करें:
काफी उचित। मैंने वास्तव में तुलना नहीं की। बंद हर संभव उपकरण के साथ एक विशाल गोदाम की तरह है जो आप संभवतः स्थित होना चाहते हैं ... कहीं। .NET या बड़े पैमाने पर जावा लाइब्रेरी की तरह। एक बार जब आपको अपनी ज़रूरत के बारे में पता चलता है, तो आप अत्यधिक विशिष्ट सामान पा सकते हैं जो अत्यधिक विशिष्ट नौकरियां करता है। और फिर उत्पादन के लिए आप सभी क्रुट को हटा सकते हैं।
दूसरी ओर JQuery, एक आसानी से संशोधित सोनिक पेचकश से अधिक है।
Google क्लोजर लाइब्रेरी आपको अपने जावास्क्रिप्ट को संकलित और अनुकूलित करने की अनुमति देता है। यह jQuery की तरह एक पुस्तकालय नहीं है। jQuery कुछ ऐसा है जो आपको ऐसे फ़ंक्शन प्रदान करता है जो आपको अपनी स्वयं की जावास्क्रिप्ट लिखने की अनुमति देता है।
Google क्लोजर आपको इंटरनेट पर तेजी से वितरण के लिए अनुमति देने के लिए अपने स्वयं के जावास्क्रिप्ट कोड को कम करने में मदद करेगा।
लंबी कहानी, गूगल क्लोजर एक उपकरण है जबकि jQuery प्रोटोटाइप के समान एक पुस्तकालय है।