सबसे अच्छी रणनीति है कई पुस्तकालयों का उपयोग नहीं। यह किसी समस्या पर अधिक पुस्तकालयों को फेंकना चाहता है, लेकिन यह अक्षम है, त्रुटि प्रवण है, और आपके कोड को दूसरों द्वारा बनाए रखने के लिए कठिन बनाता है।
ज्यादातर मामलों में आप अपनी समस्या डोमेन को समझकर एकाधिक पुस्तकालयों का उपयोग करने से बचने में सक्षम होना चाहिए और कौन सी लाइब्रेरी आपको इसे हल करने में मदद करेगी। इन सभी पुस्तकालयों के लिए प्लगइन और एक्सटेंशन के असंख्य भी हैं।
उदाहरण के लिए, JQuery बॉक्स से बाहर क्रॉस-डोमेन JSONP कॉल का समर्थन करता है और JQueryUI में एक अच्छी विजेट लाइब्रेरी है, प्रोटोटाइप नहीं करता है।
$.getJSON('http://anothersite.com/mashup.json?callback=?', function(data) { });
प्रोटोटाइप वास्तव में अच्छा OO समर्थन हासिल है और यह डोम पार करने के लिए आसान है, लेकिन क्रॉस-डोमेन विजेट और मैशप बनाने के लिए आवश्यक कार्यक्षमता के कुछ का अभाव है।
var Foo = Class.create({
initialize: function(name) {
this.name = name;
}
});
var Bar = Class.create(Foo, {
initialize: function($super, name) {
$super(name);
}
});
Mootools महान प्रभाव, अच्छा OO समर्थन, वास्तव में ठोस विजेट और क्रॉस-डोमेन अनुरोध है, लेकिन (और यह सिर्फ मेरी धारणा हो सकता है), विकास समुदाय के रूप में सहयोगी और वैश्विक समुदाय के साथ सामाजिक नहीं है (mootools के बाहर) अन्य समुदायों के रूप में (प्रोटोटाइप इस तरह से इस्तेमाल किया जाता था)। यह अमेरिका के बाहर रहने वाले उनके मुख्य डेवलपर का परिणाम हो सकता है, और इस तरह अधिक सम्मेलनों में भाग लेने और अधिक समुदाय में भाग लेने में सक्षम नहीं हैं। मैं आपको पूरी तरह से रोक नहीं दूँगा, लेकिन यह ध्यान में रखना कुछ है।
AFAIK प्रोटोटाइप में ऐसी सुविधा नहीं है। jQuery ने "jQuery" ऑब्जेक्ट के अंदर सबकुछ नाम दिया है, और प्रोटोटाइप के दर्जनों कस्टम और अंतर्निहित कक्षाओं में बिखरे हुए कार्य हैं, इसलिए ऐसा करना बहुत कठिन होगा। –
याहू के लिए, अगर मुझे सही याद है तो यह "याहू" या कुछ नामक नामस्थान के अंदर सबकुछ छुपाता है, इसलिए यह वास्तव में डिफ़ॉल्ट रूप से किसी भी चीज़ के साथ संघर्ष नहीं करता है। –