[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: A 21st Century Apple II?
I found Java to be rather slow when it came to doing any sort of
graphical work and a large memory footprint with GUI projects. The
charm has ended for me with the idea of a library that is supposed to
build and run anywhere... even in with the more C++ centric ones (like
wxwidgets etc). Always ended up with a compromise in functionality on
one platform or the other, in order to run on all. I have run into
this with OpenGL, SDL, WxWidgets, Java/Swing .I have been at more than
a few companies that wasted a ton of time trying to find a perfect
cross platform GUI solution rather than just get started and write two
verisons of the GUI code and decide on a well supported language like
C++ for the rest that can be shared. With that in mind, I know you can
make "native" calls in Java so I suppose there is a way out, but that
at least seems to be rather kludgey and with the cross platform nature
of C++ without the GUI elements a question more of language preference
and forcing that preference of Java. (Deploying Java run times can be a
hassle when its a ton of customers!) Eclipse is a good example to prove
me wrong about the gui stuff but it does rely on native code for its
widgets if I am not mistaken and a lot of work was done to make that
work easily with Java because IBM was pushing Java on us.
I wrote an app for a big company that will remain nameless for Mac and
PC, both versions shared a C++ "engine" and on the mac I used the cocoa
graphical stuff (a little kludgey to call C++ but OK) and on Windows I
used MFC. The gui part took less than 10% of the total time with a this
huge app (20+ programmers). We essentially made two different versions
of the parts you see (GUI), but it was the best way as the end product
was nice compared to some more cross platform gui adventures we had
gone down with earlier projects. I realized at that point how much time
we had wasted trying to find the perfect cross platform solution to do
everything cross platform (Java's promise), rather than just some
things (C++ and MFC and Cocoa) with diffent advantages depending on the
platform.
To stay more in this newsgroup's subject matter, I recall most games
ported to many different platforms back in the early to mid 80's and
sharing perhaps a CPU but no graphics stuff. With the exception of
SCUMM and its predecessors and other adventure type game stuff,
companies were cool with writing programs in different versions by
platform. I think Java sort of sold us on the idea that it was not
necessary anymore without looking at all the graphical compromises that
come with it.