Win a copy of The Little Book of Impediments (e-book only) this week in the Agile and Other Processes forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

How to choose between UI Frameworks/Toolkits

 
Raghavendra Desoju
Ranch Hand
Posts: 95
2
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Ranchers,

Could you please share your thoughts on selecting appropriate tool/framework for a given scenario? I feel this is really confusing....

1)JSF & Servlet
2)JSP & Servlet
3)Java FX
4)Swing
5)AWT
6)SWT

Thanks,
Raghu
 
Maneesh Godbole
Saloon Keeper
Posts: 11331
16
Android Eclipse IDE Google Web Toolkit Java Mac Ubuntu
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Could you please share your thoughts on selecting appropriate tool/framework for a given scenario?

The only appropriate answer is "Select the correct tool for the job" In other words what are the requirements?
 
K. Tsang
Bartender
Posts: 3585
16
Android Java
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Swing, AWT and SWT = Desktop GUI

JSP & Servlet = typical web app with "simple" UI (JSP), logic in servlets

JSF = complex/fancy UI interaction (code behind are called manage bean rather than servlet and such beans are models not controller; FacesServlet is the JSF controller)

JavaFX = hmm app for both web and desktop (that was the original goal I recall)
 
Bear Bibeault
Author and ninkuma
Marshal
Pie
Posts: 65337
97
IntelliJ IDE Java jQuery Mac Mac OS X
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
K. Tsang wrote:JSF = complex/fancy UI interaction ....

Differing opinion: JSF = Rube Goldberg machine to do something that's relatively simple in the most complex fashion possible by trying to force an incompatible model onto the web. Also, a mastodon caught in the tar pits, stinking of extinction.

JavaFX = hmm app for both web and desktop (that was the original goal I recall)

JavaFX is not for web apps.

But yes, without the "given scenario" it's impossible to make any sort of recommendation.

And if it's a web app, you left off the most modern choice: REST API with JavaScript SPA (but I assume you're limited to Java by the certification?)
 
Raghavendra Desoju
Ranch Hand
Posts: 95
2
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Bear,

(but I assume you're limited to Java by the certification?

Yes, this is with reference to OCMJEA certification.

Thank you all for sharing your thoughts.

Regards,
Raghu
 
Leonardo Celati
Greenhorn
Posts: 14
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Raghavendra Desoju wrote:Hi Ranchers,

Could you please share your thoughts on selecting appropriate tool/framework for a given scenario? I feel this is really confusing....

1)JSF & Servlet
2)JSP & Servlet
3)Java FX
4)Swing
5)AWT
6)SWT

Thanks,
Raghu


As other have said, the requirements will drive the right choice. However, these are my opinions:

JSF (without servlet) = use 2.x version (no ver. 1.x), when you expect low number of users and you are dealing with management interface. Oracle guarantee backward compatibility, and many vendors offers their "Faces" on top of JSF, which bring you lot of nice things, including AJAX and Responsiveness. You are also kept safe from cross site scripting and all such kind of attacks.
JSP & Servlet = only for simple interface or specific pages with graphs, data, etc... lot of extra coding is expecting you, to cover all the aspects that other framework are offering out of the box. All the AJAX things for example.
JavaFX = It is now part of JDK, but the whole project seems a bit stale. Use it for fat client or rich interfaces.
Swing, AWT, SWT = When you need a Fat client or a standalone program these are the alternatives. SWT however is not a standard by Oracle.

Then as other have mentioned:
JS + Rest API = there's a lot of framework offering this. This approach although good, requires good architects, and good developer. In these months I am seeing many projects failing on lot of aspects: security, vulnerability, and mostly scalability and performance degradation.
 
Anton Golovin
Ranch Hand
Posts: 527
1
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Raghavendra Desoju wrote:Hi Ranchers,

Could you please share your thoughts on selecting appropriate tool/framework for a given scenario? I feel this is really confusing....

1)JSF & Servlet
2)JSP & Servlet
3)Java FX
4)Swing
5)AWT
6)SWT

Thanks,
Raghu


Hi, Raghu - by knowing them well. A framework has a set of features, you should know what those features are, be able to legibly compare between frameworks, and be able to reason why this or that framework is a) better for the problem at hand, and b) easier/more productive to develop in and to use within the application.

Most modern frameworks are pretty good; however, I would say in terms of productivity you want a component-based framework or - and one has to be attentive here - an MVC framework with a suite of AJAX-enabled components at hand so it effectively functions as a component-based framework.

In that regard, the easiest thing to use would be Servlets, JSP and a client-tier AJAX-enabled framework like JQuery, or something similar but with a robust set of UI components already built in (Sencha, Telerik for JSP, etc.). Probably the most lightweight setup of all should win.

This is what the framework should not be: heavy, unwieldy and unscalable. If you avoid those, the rest of the choices come down to ease of development and productivity.

Hope I was helpful.

With best regards,

Anton.
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic