Need Javascript library recommendations [closed]
I'm going to be developing a small web application for internal use at my company. What is the best Javascript framework to u开发者_运维问答se with it? I'm not a graphic designer but I do have experience writing desktop applications so I think a library strong on containers and widgets would be good. I'd prefer not to spend money and I don't think my management will go for open sourcing the web application. My web application will be written in Grails so it needs a good plugin. What frameworks do you recommend?
I was leaning towards ExtJS but I'm concerned about the license. Does the FLOSS exception apply?
I also considered Dojo but old answered questions suggested that the quality was poor. Is that still the case?
What about GWT?
jQuery seems too open ended for my use, with only a few widgets and a seemingly difficult to browse widget library. Is that assessment correct?
Others?
Prototype JS (my recommendation) and Mootools
jQuery is the industry standard, used by a lot of companies of varying size worldwide. If you worry about the interface there is jQuery UI, which extends jQuery and provides a number of user interface elements. I would suggest to look at it.
Sproutcore is free and works with grails. It has a good library of default components as well.
Dojo has improved a lot. I used the framework recently and they cover many different aspects (from widget library to data repository abstractions). They are improving documentation with tutorials. In addition, you can follow a declarative approach (using tags on your HTML elements) reducing the amount of javascript code.
However, the choice depends on your specific needs. Frameworks such as jquery or mootools are great for manipulating the DOM easily. Howver, if you are looking for a consistent widget framework maybe Dojo or yahoo YUI can be more suited to your needs.
If it's a small project and you are not already familiar with GWT, you'll find it tough to justify the investment in the time spend on learning. GWT's true potentials starts shining when you are familiar with the toolset and development/debugging/deployment workflow.
ExtJS requires paid license for commercial use. But if you can afford it, it might be the fastest route to a good-looking app with powerful UI.
JQuery is good but as someone already pointed out, you need to pick and choose your plugins and resolve version incompatibility issues on your own. For example, if you need an editable grid, jqGrid is a good option, but you'll need to figure out which version will work with your jquery version and other plugins. Similary things like form-validation, masked input etc. often require third-party plugins (or rolling your own). It can become tedious if you are working solo and on a tight deadline.
In my experience, DOJO has much higher learning curve than most other popular JS libraries.
Summary:
GWT, if the project is large-enough to justify the learning effort (or you can reuse the skills in other projects)
jQuery, if you have time and patience for integrating myriad of plugins on your own.
ExtJS, if you value time and convenience over money
DOJO, probably never ;)
精彩评论