It's been some time you heard something from me, but I'm still here :-)
And I'm still working on Protux, though it has been very little due a hard
disk crash, and no linux install for months, besides, I had vacation too ;-)
Well, in regard to switching over to Java, the proposal came as a rather
unpleasently surprise for me, since I don't have good experiences with Java.
Apart from that, I've learned some more C++ and in combination with Qt3/4,
it will IMHO serve Protux development as much as Java's does.
Also, using other libraries is simpler (C or C++ ones) and faster then using
them from within Java code, though it's possible.
I did a lot of research on the Qt/C++ vs Java matter, but it seems that all
those people commenting on it on the net are rather "religious" about there
favorites, instead of pointing out which one is better for which task.
Nevertheless, it seems to be a big issue that Java programs tend to be slow,
at least when used from within Linux systems, and although this may due to
less efficient GUI libraries, it's a common experience.
Memory footprint is also larger, at least when you run the program in a JVM,
which would be the case. Compiling it to native code could be an option, then
it would consume less memory (no JVM required) and it seems the program wil
run faster (Redhat has compiled Eclipse to native code, and startup time went
from one minute to 15 seconds...)
But then it makes less sense to switch over to another language since we
allready compile to native code, and we would throw away one of the featues
of the Java language...
Anyway, using Java for Protux means we have to port both libmustux and Protux
to Java, and usage of the Qt toolkit becomes less usefull/apparent, so
effectively it means that Protux will become no longer a Qt program.
After asking a number of people (who did both Java and Qt/C++ coding) it
appears that Qt/C++ is the better choice since it simply runs faster, more
memory efficient, and kdevelop as development platform is making huge strides
to become on par with the Eclipse development platform feature wise...
(Kdevelop has integrated Qt support, a fairly decent Make manager, both
automake and qmake, so compiling the program is only one click away, code
completion/management works rather well with kdevelop 3.2.2 and will be much
better with kdevelop4)
I dicussed this proposal with Luciano, and agreed that using Java could speed
up development in some areas, but I'm worried about the time it takes to port
the whole project over, which is rather a large amount of work. So, my
question was: Is it worth the effort.
Then the performance problems, linking to other non Java libraries, and the
issue the users will have to install the Java runtime environment to make
Protux run, which is not to my liking.
Actually, I had some ideas improving Protux and porting it to Qt4, since when
Protux will be more usable, Qt4 will be available on all distro's.
In fact, I did a quick test and it was easy to port it to Qt4, though a number
of painting problems had/need to be resolved...
Well, as you allready guessed, I'm not too fond of the idea to port the
project over to Java, specially not since Qt4 has so much to offer, which we
can use right away.
If Luciano decides to switch over to Java, I'm not sure yet if I'll continue
to work on Protux. It depends a lot on how things will evolve if he decides
to do so.
Right now, I'm rather stuck on what to do, since I planned to work on Protux,
also on porting it to Qt4, which I was doing at the time this proposal came
in. So, I'm in favor of keeping Qt/C++ as development platform :-)
Thanks for your time,
Protux-devel mailing list