i am currently at the task of making an UI to an application (let’s keep this abstract, i have this problem often). What factors do i need to watch out for when homing in on a
GUI – library?
I currently don’t know:
- if i want to go android, so i don’t know if i want to use XML.
- what design i want to choose
- Let’s assume i know little about UI design, so the Library should help me there
- What about Mouse gestures? Perhaps i want to use those too…
- …
So how do i decide which library is best for me? What thought-process is best when choosing
such a library?
Well first and most importantly, where will your client app run?
– Browser
– Android devices
– PC/Mac
Browser
There are plenty of open source java frameworks to choose from and the task of choosing can be daunting.
For me there’s a clear winner in this space and it is GWT https://developers.google.com/web-toolkit/
There are several libraries based on GWT which provide higher level user controls and other tools. I can come up with many advantages of GWT and GWT based libraries, but the main thing is – it is an all java solution, and it is pure java (no java script, no jsp, no html)
Android
Can’t give much advice here but starting with the standard libraries provided by Google should be a good choice
PC/Mac
A java application running on a client PC is probably the most unpopular option. If you manage to get your users to run an application on their machine, then it better be worth it. Meaning find the one with the best looking and richest set of components. Having this in mind the standard Java Swing libraries are quite inadequate. The heavy weight in this category seems to be Java Fx, I can’t comment much on it because I haven’t used it.