🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.lang.java
Article #248

java vs. multi-platf. frameworks ?

#248
From: Michel Tourn
Date: Mon, 15 Apr 1996 01:18
122 lines
4895 bytes
Hey there everybody !

Despite the high trafic in comp.lang.java, the kind of question I'm
gonna ask seems to have disappeared. I hope that means a lof of
people have made their experiences and want to share their
conclusions.

We have a Macintosh application for a specialized engineering domain
that we use in our school department for teaching and research. We
could also sell it to real-world people, except that most of them
have real-world computers. In other words, this is just another
multiplatform-wannabe story. (PC and Mac)

Since we still add features, we want to keep as much code in common
as possible for both platforms. The old-fashioned (but reasonable)
solution is to use a (more or less multiplatform) API framework. The
new solution is, guess what... java.

I've met a lot of people who are really enthusiastic about us doing
it in java, but mainly because it hasn't been done a lot before. :-/
The networking force of java is not an important argument yet,
although it could be nicely applied. (For example, the program is
routinely used for Computer-Assisted Learning, and remote CAL is an
issue)

So, before we trash some C++ framework solution in favour of java, I
would like to hear good reasons of doing so or not.

More precisely, given the application description that I will give
next, I would like to know whether java for this task (porting Mac
software to PC):

- is appropriate. 
- is worth the effort. (compared to the C++ framework solution)


I think answer to point 2 should be Yes, because the code is in
(slightly object) Pascal, and a major rewrite in C++ was planned
anyway.

For the appropriateness question, I will try to give both relvant
information to answer it and tentatives of (not really well
informed) answers when I have one. Since most people in my place
including myself are positive about java, I would be mainly grateful
for *pessimistic* answers and *horror stories* from people who
dreamt of a java project with similar characteristics and had to
move back to some "well-understood" technology. (the reason why I
cross-posted)


OK, here is my feature/argument list:



F. The program is 20-50k lines long (depending on how much we
initially port). 
A. Current java compilers aren't really fast 
OTOH, current java environments are already nicer than C++
environments ?

F. It has some relatively intensive computations. 
A. Native
compilers are on the way.

F. API too limited bec. common denominator. 
A. It is a specialized application, for people who don't know all
the MacOS features anyway.

F. API/IO too limited bec. security, even in "total trust mode"
A. ?


F. It has a MacDraw-like module, that must scroll and redraw a
dynamic content (but not animated). It's not a .gif download. The
scrolling speed MUST remain reasonable. We need to be able to do
pixel-level games. 
A. I've heard of a CAD project and of a MacDraw-like project 
in this newsgroup. How are these people feeling ?
I must also admit that I've seen CAD tools presented as the
archetype of what java cannot do at all (currently).


F. Internationalization. 
A. ? I guess relative paths to some
:swiss-german// directory would do the game. ? (If you make the
effort to not store strings in code of course)


F. Runtime memory requirements, are (much) higher and total mem is
limited by the runtime environment's  memory partition rather than
total available RAM. 
A. ?


F. The application reads and writes 3 kinds of files, with at least
one window per file. 
A. ?

F. There are interactions between the "documents". For example, new
documents of one kind are based on documents of another kind. 
A. ?


F. Java, its IDEs, its AWT, its available class libraries  will be
appropriate for this task, but not now. 
A. When ?


A last one, that I don't really need for this project:

F. Drag-and-Drop is nice. 
A. I think I've heard it's possible. How
will that interact with the java + OpenDoc wish of some people ??



That's it. Thanks for reading up to this point. If you have answers
or other issues you think we should consider, that would be nice if
you type now.


--Michel    <mailto:tourn@it.dgm.epfl.ch>
Technical Details
Message-ID: <3171A3EA.3F27@dma.epfl.ch>
Path: arc1-ca.pugleaf.net!swidir.switch.ch!epflnews!news

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!swidir.switch.ch!epflnews!news
From: Michel Tourn <tourn@dma.epfl.ch>
Newsgroups: comp.lang.java,comp.lang.c++,comp.sys.mac.oop.misc,comp.lang.basic.visual.misc,comp.sys.mac.programmer.misc,comp.windows.misc
Subject: java vs. multi-platf. frameworks ?
Date: Mon, 15 Apr 1996 01:18:34 +0000
Organization: Ecole Polytechnique Federale de Lausanne
Message-ID: <3171A3EA.3F27@dma.epfl.ch>
NNTP-Posting-Host: itmac4.epfl.ch
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-Mailer: Mozilla 2.01 (Macintosh; I; PPC)
To: as CAD-in-java author <tan@cdr.stanford.edu>