डगलस क्रॉकफोर्ड का क्या मतलब है जब वह कहता है कि jQuery स्केल नहीं है? [बन्द है]


32

इस वार्ता के प्रश्नोत्तर खंड में , डगलस क्रॉकफ़ोर्ड का कहना है कि jQuery के साथ-साथ कुछ अन्य लोकप्रिय पुस्तकालयों को स्केल नहीं किया गया है। उसका क्या मतलब है, और यह अन्य पुस्तकालयों के बारे में क्या है जो उन्हें अधिक मापनीय बनाता है?


जावास्क्रिप्ट reddit पर इस पर अधिक चर्चा: reddit.com/r/javascript/comments/h21vr/…
MatrixFrog

पूरे वीडियो को देखे बिना, मैं कह सकता हूं कि jQuery का उपयोग करके केवल सिंगल-पेज एप्लिकेशन को अच्छी तरह से स्केल नहीं किया गया है। कारण यह है कि आपको अपने कोड को व्यवस्थित करने के लिए मॉडल-व्यू-समथिंग फ्रेमवर्क नहीं मिलता है। Backbone.js , Knockout.js और / या Sammy.js जैसे संरचनात्मक ढांचे के साथ jQuery को मिलाएं , हालांकि, और यह वास्तव में बहुत अच्छी तरह से तराजू है।
user16764

बात नहीं देखी, लेकिन मेरी 2 सी यहाँ है कि जानवर के प्लगइन केंद्रित प्रकृति मार्गदर्शन और उपकरणों की लोडिंग निर्भरता के लिए उपकरणों की कमी के साथ संयुक्त है जहाँ आप jQuery प्लगइन सूप मिला है, जहां टीम में से किसी को कुछ की जरूरत है एक विशिष्ट कार्य के लिए प्लगइन, कहा जाता है कि प्लगइन में ऐप-वाइड शामिल है और अंततः आप पूरे ऐप में 342 अलग-अलग jewery प्लगइन्स लोड कर रहे हैं। यह जानवर की प्रकृति की तरह है - इसे बड़े पैमाने पर अपस्ट्रीम अवधारणाओं को ग्रोक नहीं करने की कीमत पर छोटे पैमाने के सामान को आसान बनाने के लिए डिज़ाइन किया गया है।
व्याट बार्नेट

4
यह उत्सुक है कि 4 में से 3 उत्तर "मैंने वीडियो नहीं देखा है" के कुछ बदलाव के साथ शुरू होते हैं। वीडियो को देखे बिना आप वास्तव में कैसे स्पष्ट कर सकते हैं कि मिस्टर क्रॉकफोर्ड का क्या मतलब है?
कॉर्बिन मार्च

खैर, उन्होंने बहुत कुछ नहीं कहा। जैसा कि उत्तरदाताओं में से एक ने कहा, यह बहुत अंत में प्रश्नोत्तर खंड में एक अपमानजनक टिप्पणी थी। लेकिन आप एक अच्छी बात करते हैं।
मेट्रिक्सफ्रॉग

जवाबों:


41

यदि आप वीडियो देखते हैं, तो वह औपचारिक रूप से jQuery के बारे में बात नहीं करता है। यह प्रस्तुति के बाद किसी से थोड़े आक्रामक सवाल पर एक त्वरित प्रतिक्रिया है .... प्रस्तुति के अंत में, लगभग 1:29 मिनट पर।

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


29
एक प्रतिक्रिया पोस्ट करने से पहले वास्तव में वीडियो देखने के लिए +1। (-:
केएम।

3

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

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

संक्षेप में, jQuery के पास उन उपकरणों का अभाव है जो एक बड़े पैमाने पर जावास्क्रिप्ट अनुप्रयोगों के लिए चाहते हैं। इस कारण से jQuery का उपयोग करके किसी भी बहुत भारी जावास्क्रिप्ट साइटों को खोजना बहुत ही असामान्य है। उदाहरण के लिए, Mint.com YUI पर बनाया गया है । Apple की MobileMe वेब सेवा स्प्राउटकोर (Apple की मुख्य साइट प्रोटोटाइप का उपयोग करती है) पर चलती है ।

कम से कम, मुझे यही लगता है कि उसका मतलब है।


1
हम्म। मैं jQuery से बहुत परिचित हूं, लेकिन YUI या किसी अन्य JS चौखटे से बिल्कुल परिचित नहीं हूं। तो शायद मुझे पूछा जाना चाहिए कि YUI, प्रोटोटाइप आदि के बारे में ऐसा क्या है जो उन्हें बड़े, स्केलेबल वेब ऐप बनाने के लिए अच्छा बनाता है? यह पूछने के बजाय कि jQuery के पास क्या नहीं है ...
MatrixFrog

6
"JQuery का उपयोग करके किसी भी बहुत भारी जेएस भारी साइटों को ढूंढना बहुत असामान्य है" .... जब हम सामान बना रहे हैं, तो क्या आप 10mb से कम फ़ाइलों की आवश्यकता वाले YUI के बारे में कुछ बना सकते हैं?
कीन

@ टोकन यदि आप अपने पृष्ठ पर पूरी YUI लाइब्रेरी लोड कर रहे हैं तो आप इसे गलत कर रहे हैं। याहू डायनेमिक लोडर प्रदान करता है एक कारण है। और यदि आप मेरे आकलन से असहमत हैं, तो इसके विपरीत उदाहरण प्रदान करें। हमें jQuery पर निर्मित एक बड़े पैमाने पर एप्लिकेशन दिखाएं।
चिपरसॉफ्ट

4
"बड़े पैमाने" को तब परिभाषित करें। एसई स्टैक jQuery का उपयोग करता है।
केन

SE मुख्य रूप से JS संचालित नहीं है, यह jQuery का उपयोग करता है जिस तरह से हर कोई jQuery का उपयोग करता है: मूल ईवेंट बाइंडिंग, सरल AJAX अनुरोध, कुछ DOM हेरफेर। बड़े पैमाने पर इसका मतलब है कि जेएस पर पूरी तरह से निर्मित पूरे अनुप्रयोग; गैर-पृष्ठ आधारित साइटें। हम सामान की तरह बात कर रहे हैं जो मैंने ऊपर उल्लेख किया है (Mint.com & MobileMe), Cloud9 संपादक, gMail, Mockingbird। वे साइटें जो जेएसएम कोड के 1MB से ऊपर या उससे ऊपर की हैं।
चिपरसॉफ्ट

2

jQuery आपको उदाहरण के लिए MooTools की तरह बहुत सारे पुन: उपयोग की अनुमति नहीं देता है ।

यह एक दर्शन / डिजाइन निर्णय है: jQuery आग और भूल जाने वाले परिदृश्यों के लिए बहुत अधिक कोड नहीं है।

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

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.