Linux Application Development

Tom Bradford plug-discuss@lists.PLUG.phoenix.az.us
Sun, 06 May 2001 19:38:37 -0700


Carl Parrish wrote:
> Uhmmm because Java sucks. Don't get me wrong its pretty much been my
> bread and butter for the last year or so. But I would never suggest it
> for the uses that were brought up. First while Java's performance has in
> fact been getting better and better The GUI (read awt / swing). Is still
> very very slow and bloated. The overhead you have to deal with to get
> JDBC up and running is simply too huge for a simple Client / Server
> application. Now if the app was enterprise wide, Needed to be web /
> wirless enable, or needed a big team to work on it. I might suggest
> Java. Otherwise Glade, python, or ruby are all better answers.

Java's been mine since 1996.  I know quite a few languages, and actually
like C++ and Python, but given the choice, I'd choose Java for just
about any programming task other than intensive text manipulation.

JDBC has no more overhead than any other database CLI, in fact it has
less than most.  You can get a driver connection, query a table, and
iterate through the result set in about 5 lines of code.  I don't see
that being very much in the overhead department.  Especially if you've
used things like ODBC or even worse, a DB's native API.

Regarding AWT, generally it's very fast.  The problem that it suffers
from is that it's a peered toolkit, so it requires native GUI resources,
which can be bad if you get into very complex layouts using Panels.  Its
other problem is that because it's peered, it looks different on every
platform, and the peered widgets behave differently.  The peered thing
is why Swing was created, but it's not neccesary to use Swing for very
simple interfaces.

Regarding Swing, its performance depends on many factors, including how
the data model is implemented, and whether or not the developer who
designed the interface knew what they were doing.  There are a LOT of
really fast Swing interfaces, and there are quite a few dog-ass slow
ones.  The difference really comes down to who designed them.

I suppose I could make blanket statements like "Ruby Sucks", but it
doesn't.  Actually, no language sucks (except maybe Scheme)  Each is a
tool, that in the right person's hands can be razor sharp, and in the
amateur's hands can be a blunt object.  Java just happens to sharpen
very easily.

-- 
Tom Bradford --- The dbXML Project --- http://www.dbxml.org/
We store your XML data a hell of a lot better than /dev/null