ExtJS or SmartClient?

2019-04-28 19:23发布

问题:

I would like your opinion about these two frameworks. I like a lot the features of ExtJS, but recently I saw SmartClient and it seems to be great too, and free (its Client side features) for commercial projects. I tried a little of SmartClient and it seems to be easier than ExtJS, and it has a better documentation tnan ExtJS.

BUT.. I didn't work with any of these frameworks and maybe I'm wrong. That's why I would like the opinion of people who has worked with them.

And BTW.. how does the license of ExtJS work? you've to but one license for each developer and then you're able to develop and sell every app you want or you have to buy a license for each app you sell?

Thanks in advance for your help.

回答1:

This has been pretty well covered on SO. Specifically here and here.

Ext JS is licensed per developer not per app.

I'm an Ext JS developer so I'm partial to Ext, but I have no opinion of SmartClient good or bad. If licensing is the most important criterion SmartClient might be better for you. If you want to weight the technical merits see the links above, or even better evaluate them both based on your own needs.



回答2:

I use SmartClient and am quite happy with it and the support provided by Isomorphic. The U/I widgets aren't the nicest out there, but you can see that they've been around for some time by the richness of their API.

It's also quite easy to roll out your own custom controls when the built-in ones don't suit your needs. For example, we integrated Raphael pie chart SVG drawings inside custom Isomorphic canvas classes. We also integrated Mondrian/JPivot analytical technologies which are legacy JSP pages, using Smartclient's HtmlFlow control. It's quite powerful what can be achieved.

One thing I regret about Smartclient versus other technologies such as jQuery, is a clearer separation between the work a web designer does versus the work a developer/programmer does.

With Smartclient, it's mostly done thru code, even the layout of components. There's no HTML per say. They've separated very well the skinning (css), but that's about it. Everything else needs to be done by a developer/programmer thru Javascript code. Smartclient is good for single-page apps.

I can't speak for ExtJS as I haven't used it real production environments, but in the end I think it all boils down to the licensing model and programing/design model you want to be using.



回答3:

I have used both, and I would recommend Ext for the following reasons:

  1. Layout flow is much easier, especially with the design tools.
  2. The UI Builder from Isomorphic lacks the usability that the tool from Ext offers
  3. The Javascript performance was better with Ext
  4. CSS is easier to use with the Ext framework
  5. Editing CSS/Themes/Skins in SmartGWT/SmartClient is major surgery (very tedious and time consuming)
  6. Widgets are similar but "prettier" in Ext
  7. Forum administrators on both sites can be "snippy", however premium support did not change this on the Isomorphic site. They are rude and condescending even when you pay.
  8. Ext has a dedicated MVC framework. The Isomorphic framework does not.
  9. SmartClient charting DOES NOT support negative number values


回答4:

Before starting new GUI for our new project arrival, I made some research.

Here are my findings (remove spaces from "http: // "; bcoz stackoverflow is preventing me to do so :)): Prototype framework favorable links:

http://en.wikipedia.org/wiki/List_of_Ajax_frameworks

http://www.javabeat.net/articles/12-comparison-of-ajax-frameworks-prototype-gwt-dwr-and-1.html

http://www.devx.com/AJAXRoundup/Article/33209

Dojo framework favorable links:

http://blog.creonfx.com/javascript/dojo-vs-jquery-vs-mootools-vs-prototype-performance-comparison

jQuery framework favorable links:

http://blog.creonfx.com/javascript/mootools-vs-jquery-vs-prototype-vs-yui-vs-dojo-comparison-revised

Test speed of different RIA frameworks:

http://mootools.net/slickspeed/#

More comparasions:

http://en.wikipedia.org/wiki/Comparison_of_JavaScript_frameworks

http://jqueryvsmootools.com/#conclusion

Out of all these findings I started using SmartClient 5. Initially we faced some issues but as SmartClient matures I find it interesting in many terms: 1. APIs doc help and examples 2. Flexible controls 3. Forum

Today I am working on SmartClient 8 and few on my GUIs are in production running successfully. Actually the great help with SmartClient is that you find every thing at one place. No need to dug many other sites that is hard to do for any other open source RIA framework.

So my choice is no doubt SmartClient.

Thanks Shailendra (shaILU)



回答5:

I would prefer Jquery UI. Which is supported well by community. By combining plugins you can get similar -if not better- screens provided by extJS and SmartClient.