JQuery को कब अपडेट करें?


19

जब आप jQuery / jQuery UI अपडेट करने की सलाह देते हैं? या दूसरे शब्दों में: jQuery / jQuery UI को अपडेट करने के लिए सर्वोत्तम अभ्यास क्या हैं?

मैं एक लंबे प्रोजेक्ट पर काम कर रहा हूं जिसमें कम से कम एक साल और लगेगा। उस समय अवधि में, मुझे यकीन है कि jQuery / jQuery UI कई बार अपडेट किया जाएगा।

क्या आप हर बार अपडेट जारी होने के बाद मेरी jQuery / jQuery यूआई फ़ाइलों को अपडेट करने की सलाह देते हैं? या प्रोजेक्ट के अंत तक किसी विशेष संस्करण के साथ रहना बेहतर है?

मुझे "ब्रेकिंग" कोड परिवर्तन से डर लगता है, और हर बार अपडेट जारी होने के बाद, मुझे हर चीज का परीक्षण करना होगा। जिसमें बहुत अधिक समय लगता है। लेकिन दूसरी ओर, अगर मैंने अपडेट नहीं किया, तो मुझे बग से डर लगता है जो बाद में मुझे पीछे से काटेगा।

परियोजना एक ASP.MVC है और मैं jQuery का बहुत उपयोग करता हूं।

कोई विचार?


यह लेख प्रासंगिक हो सकता है: यह हमेशा Google द्वारा होस्ट किए गए संस्करण से जुड़कर
एलेक्स फीमैन

जवाबों:


19

अपने jQuery के संस्करण को अपडेट करें यदि और केवल तभी जब आपको कुछ नई सुविधा की आवश्यकता हो जो नए संस्करण में शामिल हो। इतना ही आसान।

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


1
+1 इसे करने का सबसे स्थिर तरीका है, अपग्रेड के लिए अपग्रेड करने से आपके समग्र विकास का समय बढ़ जाता है जब आप फाइटिंग बग खत्म करते हैं।
निकोलस स्मिथ

2
इसके अलावा, अपने प्लग-इन पर नज़र रखें। कभी-कभी प्लग-इन बग फिक्स को कोर jQuery कोड को अपग्रेड करने की आवश्यकता होती है।
एड्रियन जे। मोरेनो

12
मैं इस जवाब से असहमत हूं। यदि उत्पाद अभी भी विकास में है, जैसा कि सवाल से लगता है, तो jQuery के प्रत्येक नए रिलीज के साथ अपग्रेड करें। यदि उत्पाद उत्पादन में है, तो मैं इस उत्तर से सहमत हूं, केवल तभी अपग्रेड करें जब अपग्रेड आवश्यक हो (बग फिक्स, नई सुविधा आदि)
चक कॉनवे

@ChuckConway: अच्छा कहा।
जिम जी।

20

आपको jQuery के प्रत्येक रिलीज़ के साथ अपग्रेड करना चाहिए - बस अपडेट करने से पहले अपडेट लॉग पर एक नज़र डालें ।

JQuery की टीम एपीआई परिवर्तन और हटाए गए कॉल के दस्तावेजीकरण के बारे में बहुत अच्छी है । इस बिंदु पर, एपीआई का विशाल बहुमत काफी स्थिर है और शायद नहीं बदलेगा। अधिकांश परिवर्तन पीछे के बग फिक्स हैं जो बाहरी एपीआई को प्रभावित नहीं करते हैं। यह नवीनतम रिलीज़ (1.8+) के साथ विशेष रूप से सच है।

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


4
यह स्वीकृत उत्तर होना चाहिए, इसे छोड़ने का मतलब सिर्फ यह है कि जब आप अंततः अपग्रेड करना चाहते हैं तो आपको बड़ा संस्करण कूदना होगा जो कि बहुत कठिन है।
डैनियल लिटिल

5

जैसे ही आप कुछ भी तोड़ने के बिना अपग्रेड कर सकते हैं। नई कार्यक्षमता, बग फिक्स, नई विशेषताएं हर पुनरावृत्तियों में पेश की जाती हैं।

आपको नवीनतम सुविधाओं की आवश्यकता नहीं हो सकती है, लेकिन जब आप ऐसा करते हैं, तो आपको प्रत्येक नए संस्करण को मान्य करने की आवश्यकता होगी, जिसमें आपको यह सुनिश्चित करना होगा कि यह कुछ भी नहीं तोड़ता है।

छोटा वेतन वृद्धि आपको 5 प्रमुख रिलीजों को अपग्रेड करने और एक ही बार में सब कुछ परीक्षण करने में 5 घंटे खर्च करने के बिना सब कुछ रखने की अनुमति देगा।


1
मैं अभी भी यह पता लगाने की कोशिश कर रहा हूं कि 1.4.x से 1.7.x तक अपडेट करने से कुछ भी टूट जाएगा।
स्टाइल जूल

4

क्या आपको JQuery के नए संस्करण में शामिल नई विशेषताओं में से किसी की आवश्यकता है? क्या आज आपकी साइट उम्मीद के मुताबिक काम करती है?

यदि आपने पहले "नहीं" और दूसरे प्रश्न के लिए "हां" उत्तर दिया है, तो jQuery को अपग्रेड न करें।

यदि आपको नई कार्यक्षमता की आवश्यकता है, तो आपको इसे बढ़े हुए परीक्षण की लागत और नए मुद्दों के संभावित परिचय के खिलाफ संतुलित करना होगा।

यदि आपके पास JQuery के अपने वर्तमान संस्करण के साथ समस्याएँ हैं, तो हो सकता है कि एक नए संस्करण ने आपके मुद्दे को ठीक कर दिया हो, लेकिन आपके पास अभी भी एक बढ़ा हुआ परीक्षण बोझ है क्योंकि आपको यह सुनिश्चित करना है कि नया संस्करण कुछ और नहीं तोड़े।

यही कारण है कि यूनिट, कार्यात्मक और सुविधा परीक्षणों का एक अच्छा सूट होना बहुत आवश्यक है।


2

केवल आप ही तय कर सकते हैं कि जोखिम इसके लायक है या नहीं। निजी तौर पर, मुझे अप टू डेट रहना पसंद है। हालाँकि, मैंने कुछ बग्स को शुरू किया है, जो अपग्रेड करते समय कुछ टूट गया (या अजीब व्यवहार का कारण बना)। चूंकि आपके आगे विकास का एक वर्ष है, इसलिए संभावना है कि इसे अंतिम क्यूए रास्ते से गुजरना होगा।

मैं कहता हूं कि अप टू डेट रहो। एक बार में बड़े लोगों की तुलना में लगातार छोटे एकीकरण करना बहुत आसान है।


0

परीक्षा। परीक्षण, परीक्षण, परीक्षण, परीक्षण, परीक्षण

मैंने एक प्रोजेक्ट पर jQuery के यूआई संस्करण (तब-करंट) का उपयोग किया, और एक बाहरी प्लगइन का उपयोग किया, जिसे .autocomplete कहा गया, जिसने JSON डेटा स्रोत पर टेक्स्ट फ़ील्ड को बांधते हुए टाइप-फ़ॉरवर्ड फ़ंक्शनलिटी की। यह बहुत से स्थानों पर इस्तेमाल किया।

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

क्योंकि जिन पृष्ठों पर मैं यह नई सुविधा विकसित कर रहा था, उनमें ऑटोकोम्प्लीट्स का उपयोग नहीं किया गया था, मैंने ध्यान नहीं दिया। क्योंकि मेरा ग्राहक एक व्यापार शो से पहले इस सुविधा को प्राप्त करने की दौड़ में था, यह मंचन और परीक्षण के माध्यम से चला गया, और टूटे हुए ऑटोकोम्प्लीट्स के एक क्रेपटन के साथ उत्पादन में मिला।

अंततः, यह मेरी परीक्षण की विफलता थी। और सबक सीखा है, jQuery और jQuery यूआई पिछड़े संगतता में बहुत कम रुचि है। जो हमारे ऊपर आवश्यकता को देवता के रूप में परखने और परखने और परखने में लगाता है।


-1

मेरे अनुभव में, jQuery के नए संस्करण आम तौर पर कॉलिंग कोड (आपका कोड) के बारे में उनकी कोड स्वच्छता आवश्यकताओं में अधिक कठोर हैं।

कई आइटम हैं जिन्हें अपग्रेड किया गया है ( http://api.jquery.com/category/deprecated/ )। दुर्भाग्यवश, पृष्ठ पर कोई पदावनत-से-टैग नहीं है। पुराने अवक्षेपणों से कुछ टूटने की संभावना अधिक होती है।

सबसे विशेष रूप से (मेरे लिए), :checkboxचयनकर्ता और toggle()फ़ंक्शन को हटा दिया गया है। कुछ समय पहले, इस परिवर्तन ने मेरे अपने (सबसे पुराने) jquery कोड को प्रभावित किया है। मुझे कुछ समय तक इसका एहसास नहीं हुआ।

दूसरी ओर, नए jQuery रिलीज़ आमतौर पर पर्याप्त प्रदर्शन में सुधार के साथ आते हैं। चेंजलॉग्स की जाँच करें, या हो सकता है कि जॉन रेजिग की प्रस्तुतियों में से एक यह देखने के लिए कि प्रदर्शन में सुधार कहां हुआ था। अगर आपको उनसे कोई फायदा होगा ... तो आपको तय करना है।

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