views:

258

answers:

2

Hello. I need help in taking call to choose between Ext JS and YUI libraries. Here are the key factors I have derived from my application requirements & development process:

  1. Complex, windows forms like controls
  2. Widgets, Layouts, Utilities
  3. Inter widget communication
  4. Easy to extend
  5. Easy to learn
  6. Intuitive & concise coding
  7. Strong exception handling
  8. Active support / community
  9. To update with upcoming technologies (HTML5, etc.)
  10. Skins & Themes to be easy to change
  11. Skins & Themes to support variety (a text box for different context to appear differently)
  12. Support & Utilities for standard protocols (XmlHttp, JSON)
  13. Good performance (responsive)
  14. Cost is not crucial, but I don't mind saving :)

[Update]: Hi people ... I bumped into this link which I think is an objective comparison of prominent JS frameworks:

A: 

Maybe you want to look at this question from two days ago ;-)

http://stackoverflow.com/questions/2456101/comparing-yui-and-ext-js

Gavin Brock
Thanks. But this does not answer my specific question. I will appreciate if rating could be given to both the libraries against the said parameters.
Kabeer
+3  A: 

I've worked with YUI 2 for 2 yrs and have really grown to like it. The thread mentioned has a lot of good info. YUI 3 will be amazing, but it doesn't have (many if any) UI widgets yet.

Because of its adherence to web-standards and x-browser support, YUI 2 is a great choice for a public-facing web-app or site.

FYI, Ext 3.5 purports to have a YUI adaptor (you can use both).
http://www.extjs.com/learn/Ext_Getting_Started#Are_there_known_compatibility_issues_with_any_of_the_third-party_adapters.3F

Per your questions: 1 & 2: if you are looking for an out-of-the-box desktop-like UI, for doing "rich" data display and entry (dynamic forms, etc) Ext is the clear choice. Out-of-the-box, YUI 2 doesn't have anything close to the desktop layout and widgets that Ext does, nor does it do 'rich' forms.

3: YUI supports a simple way to create custom-events, and do KVO (via AttributeProvider).
I'd be surprised if Ext didn't have something similar

4-6: IMO, this goes to YUI. (again, my opinion)

In all other regards, the two should be similar.

What I don't like about Ext:
1. The licensing, and licensing history (do some research online)
2. It's not accessible to users with disabilities.
3. The site and documentation is not as well organized or maintained as YUI's is. Ext's site currently has a jumble of v2 and v3. 4. (my opinion) It is tougher to learn than YUI. 5. Dependency management. After using the YUILoader, I can't go back to keeping track of what scripts are included and in what order. The loader lets you define 'modules' and their dependencies, then load them on demand - no linking required. I can't emphasis enough how much simpler this makes things.

mkraken