2010-03-16 6 views
6

की तुलना में मैं थोड़ी देर के लिए अपने समृद्ध-विजेट टूलकिट के रूप में Ext JS का उपयोग कर रहा हूं, लेकिन मैं कम प्रतिबंधक लाइसेंस के कारण आंशिक रूप से YUI पर जाने की सोच रहा हूं।वाईयूआई और एक्सएस जेएस

वाईयूआई में उपयोग किए जाने वाले घटक-उन्मुख मॉडल को लगता है कि मैंने एक्सटी जेएस में इतना आनंद लिया है, लेकिन मुझे दिलचस्पी है कि ये समानताएं कितनी गहरी हैं। इसलिए मुझे उन लोगों की प्रतिक्रिया में रूचि है जिन्होंने एक्सटी जेएस और वाईयूआई दोनों का उपयोग किया है। वही क्या है, और क्या अलग है? यूयूआई में जाकर मैं क्या खो सकता हूं, और मुझे क्या लाभ होता है?

उत्तर

10

मुझे लगता है कि दोनों पुस्तकालय वास्तव में विभिन्न आवश्यकताओं को संबोधित करते हैं।

वाईयूआई याहू इंक की आवश्यकताओं को संबोधित किया गया है। सार्वजनिक सामना करने वाले अनुप्रयोगों के निर्माण में यह बहुत अच्छा है जहां सुंदर गिरावट, साफ मार्कअप और अभिगम्यता जैसी चीजें महत्वपूर्ण हैं।

ExtJS एक बहुत अच्छा और अच्छी तरह से डिज़ाइन किया गया पूर्ण आरआईए ढांचा है जो व्यापार अनुप्रयोगों की निर्माण लाइन पर बहुत दृढ़ता से लक्षित है। वास्तव में शक्तिशाली ग्रिड घटक, मजबूत लेआउट और अच्छे पेशेवर रूप और अनुभव जैसी विशेषताएं।

मैंने काफी उपयोग किया है, हालांकि केवल यूयूआई 2.7.0 तक है और ढांचे का उपयोग करके कई पूर्ण आरआईए बनाए हैं।

एक मौजूदा एप्लिकेशन को एक से दूसरे में स्थानांतरित करना काफी अलग होगा, हालांकि वे एक आम पूर्वज (ExtJS एक बार YUIext) साझा करते हैं, तो ढांचे अब काफी अलग हैं।

+0

कार्य अनुप्रयोगों के सार्वजनिक सामना बनाम लाइन के बारे में दिलचस्प बिंदु। हम अब तक आंतरिक सामान के लिए ExtJS का उपयोग कर रहे हैं, लेकिन हम इसे सार्वजनिक सामना करने वाले एप्लिकेशन के लिए उपयोग करने के बारे में सोच रहे हैं - ऐसा लगता है कि हम उस मामले में वाईयूआई के साथ जाना चाहेंगे। –

+1

वह जगह है जहां मैं लाइन खींचता हूं, ऐसा नहीं होना चाहिए (मुझे यकीन है कि एक्स्टजेस लोग कहेंगे) लेकिन वाईयूआई और jQuery जैसे ढांचे को सार्वजनिक रूप से –

+1

का सामना करना थोड़ा बेहतर लगता है। दिलचस्प बिंदु, मैं 100% सहमत हूं।अब जब मैं एक्स्टजेस का थोड़ा और उपयोग कर रहा हूं, तो मुझे अपने व्यापार ऐप में यूयूआई का उपयोग करने की कोशिश करने के दिनों याद हैं और मैंने सोचा कि यह अच्छा और काफी परिपक्व था, लेकिन यह उन सभी छोटी चीजों को संभालने में मुश्किल थी एक व्यापार ऐप में चाहते हैं। यूयूआई काफी परिपक्व है, लेकिन वे एक ही लोगों को काफी लक्षित नहीं करते हैं। यूयूआई, +1 और एक्सटीजे के "अनियंत्रित" हिस्सों के लिए "मुक्त" के लिए – SBUJOLD

2

मेरे लिए अंतर यह है कि वाईयूआई बहुत हल्का और लचीला है, जबकि एक्स्टजेस भारी है, एक बड़े पदचिह्न के साथ और आप इसका उपयोग करने के तरीके में अधिक कठोर हैं। यदि आप जानते हैं कि आप जावास्क्रिप्ट में क्या कर रहे हैं और अपनी शक्ति का विस्तार करना चाहते हैं तो यूयूआई बहुत अच्छा है; ExtJS अच्छा है यदि आप एक यूआई अबास्ट्रक्शन लेयर चाहते हैं जिसे आपको बहुत गड़बड़ नहीं करना है ... लेकिन यदि आप करते हैं ऐसा करना चाहते हैं जो इसे करने के लिए डिज़ाइन नहीं किया गया है, तो यह वास्तविक कोर हो सकता है।

+0

एक्सटी बेहद लचीला और शक्तिशाली है यदि आप जानते हैं कि इसका उपयोग कैसे किया जाए - यह निश्चित रूप से "कठोर" नहीं है। मुझे लगता है कि एक स्पष्ट बयान यह हो सकता है कि इसमें एक कठोर सीखने की वक्र है, लेकिन मेरी राय में यह एक समान शक्तिशाली ढांचा है। –

2

हालिया एप्लिकेशन का निर्माण करते समय मेरे पास वाईयूआई या एक्सटी जेएस बनाने का एक ही निर्णय था।

मैं कुछ कारणों से वाईयूआई के साथ जा रहा हूं: वाईयूआई 3 सरल कार्यों के लिए बेहद हल्का वजन और तेज़ है और आलसी लोडिंग चीजों को और भी तेज बनाती है।

इस ऐप के लिए गहन गिरावट महत्वपूर्ण थी।

वाईयूआई 3 में वाईयूआई 2 विगेट्स का उपयोग करना आसान है और 3.1 सचमुच सप्ताह के साथ यह और भी आसान हो जाएगा।

वाईयूआई दस्तावेज अविश्वसनीय है और आईआरसी चैट और मंच बहुत उपयोगी हैं और वास्तव में वाईयूआई विकास टीम के लोग हैं।

1

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

यह भी नहीं कहता कि आपको यह नहीं करना चाहिए, लेकिन मेरी सलाह है कि आप कुछ मौजूदा सुविधाओं का कुछ गंभीर शोध और अच्छा प्रोटोटाइप करना चाहते हैं जो आपको देखना है कि क्या यूयूआई आपकी आवश्यकताओं को पूरा करेगा या नहीं। उदाहरणों और खुद को "हाँ ऐसा लगता है कि काम करेगा" पर महसूस न करें।

2

एक समय में जब सभी एप्लिकेशन वेब पर माइग्रेट कर रहे हैं, तो सार्वजनिक चेहरे और व्यवसाय ऐप के बीच गैरेथ द्वारा खींची गई स्पष्ट रेखा मुझे भी समझ में नहीं आती है।

मैं रोबस्टो में से एक जैसे अन्य उत्तरों को प्राथमिकता देता हूं, और तकनीकी/वित्तीय आधार पर दोनों ढांचे की तुलना करता हूं।

YUI फायदे:

  • नि: शुल्क
  • लाइटवेट (एचटीएमएल + जावास्क्रिप्ट)
  • अधिक कुशल
  • आसान जानने के लिए और
  • बेहतर प्रलेखन और उदाहरण समझने के लिए
  • बड़ा समुदाय

Ext फायदे:

  • उन्नत सुविधाएं & घटकों
  • कुछ (गैर-दस्तावेजी) सर्वर साइड ड्राइवर (नेट) की तरह (हालांकि सर्वर पर इस तरह के पुस्तकालयों का उपयोग कर बुरा डिजाइन लगता है)

निष्कर्ष: यदि आपकी वेबसाइट को ext द्वारा प्रदान की गई अतिरिक्त सुविधाओं की आवश्यकता नहीं है, तो YUI के लिए जाएं।

+0

+1 (लेकिन मैं केवल एक बार मतदान कर सकता हूं) :) –

3

एक बड़ा अंतर यह है कि वाईयूआई अत्यंत अनुमोदित बीएसडी लाइसेंस के तहत वितरित किया जाता है जबकि एक्सटीजेएस को जीपीएल की बहुत ही वायरल व्याख्या के तहत वितरित किया जाता है। उदाहरण के लिए, जीपीएल की सेन्चा की व्याख्या के साथ, यदि आप एक एसओएपी या आरईएसटी इंटरफ़ेस विशेष रूप से एक एक्स्टजेस फ्रंट एंड से बात करने के लिए लिखते हैं तो आपका सर्वर कोड जीपीएल होना चाहिए और आपको स्रोत तक पहुंच प्रदान करनी होगी क्योंकि आपने इसे "वितरित" किया है वेब पर पहुंच। सेन्चा अपने कोड के लिए एक वाणिज्यिक लाइसेंस प्रदान करता है लेकिन यदि आप अपने दस्तावेज़ों को ध्यान से पढ़ते हैं तो आप देखेंगे कि वे आपको व्यावसायिक संस्करण पर स्विच करते समय जीपीएल सेन्चा के खिलाफ लिखे गए कोड को कनवर्ट करने की अनुमति नहीं देते हैं। (http://www.sencha.com/legal/license-overview)

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

1

जीपीएलवी 3 के साथ, यह कहता है कि जब तक आपके उपयोगकर्ता एक ही कानूनी इकाई का हिस्सा हैं, तो आपको स्रोत कोड साझा करने की आवश्यकता नहीं है। शब्दकोष तकनीकी रूप से यह बताता है कि वे एक ही कानूनी इकाई का हिस्सा नहीं हैं, तो आपको स्रोत प्रदान करने की आवश्यकता है। लेकिन इसका मतलब यह नहीं है कि सेन्चा बाद में लाइसेंस नहीं बदलेगी। इसका मतलब यह भी नहीं है कि वे या तो करेंगे।

संबंधित मुद्दे