Java TODO's and related stuff
May 16, 2007 02:19PM
Hi all,

I have been trying to grasp the Java code that has been developed so far by Adrian, Simon and others. While doing this, some things popped up and I wil try to put them here in order to see if these can be solved, handled or answered.

Currently, Swing is used for the GUI. Would it be an idea to use the SWT library instead? This gives the app (1) a more native look-and-feel (on various platforms) and (2) I think also might give some performance improvements compared to Swing. More info can be found here [www.eclipse.org] An alternative could also be the SwingWT library [swingwt.sourceforge.net]

There are (apparently) also some issues with the OpenGL part. First of all, some issues on different platforms (ATI/Nvidia cards on GNU Linux for example) but also on other systems that do not have these GPU's problems (can) occur. How about having the ability to select the rendering mechanism when using the application (i.e. OpenGL, DirectX, Software rendering for other types of GPU's). This might not be a high priority, but maybe something that should be tackled after a V1.0?

There are a few FOSS java installers (see [java-source.net] ) which can be used to create a complete installable app. This would maybe require some investigation on the libraries that are needed and whether they van be included, but I think this is either covered by the release of java under the GNU license (by SUN last year) or there might be the possibility to replace these libs with a GNU Classpath library.

On the documentation side, I think it would be very helpful (also for "new people" that want to contribute to the software part) if there would be some additional documentation on the code. What I am thinking about are things like class diagrams, UML diagrams, complete Javadoc (a lot is already there, but some is missing), additional info on the SNAP protocol and how it is implemented, info on the polygons package (or maybe I am just not clever enough to understand it... confused smiley), a design document that contains a high level description of what the application does, additional tags of FIXME's, TODO's, BUGS's etc. Also, it could be helpful to have a way of handling bugs, feature request, issues etc. in such a manner that they can easily be tackled

In addition, it could be helpful to implement the log4j library (logging, see [logging.apache.org]) to allow for configurable logging/debugging etc. This could also assist in understanding what actually is going on (and wrong, if that would happen)

Finally, would it be an idea to "standardize" on a development environment? Eclipse + SVN support, using ANT etc could be helpful. Obviously it is still possible to use something else, but having one environment and one set of configuration instructions on the Wiki for this, could make it easier for others to get onboard.

I would very much like to tackle some of this (starting with the documentation) but I am not quite sure what already is available - and there is no reason to re-invent the wheel ;-)

Joost
Sorry, only registered users may post in this forum.

Click here to login