> How does use of JAVA in a browser have anything to do with JAVA being part
> of an OS? Isn't JAVA a pretty self-contained set of libraries that aren't
> really hooked into any part of the OS?

Absolutely positively YES!

And absolutely positively NO!


Java itself ostensibly treats all platforms equally (although some platforms
are way more equal than others).  But this platform agnosticism really only
applies when you're talking about the Java source code itself.

In order for a Java application to be used, it has to be executed within an
environment referred to as a "virtual machine".

And a Java virtual machine is intimately tied to the operating system under
which it runs.  This is because it requires direct access to memory
management, process management, the file system, networking, etc, etc, etc.


> Furthermore, if used within a browser, like IE, JAVA is just referenced and
> used, just like any other external library.

Not quite exactly.  See above.

And, if you're really interested, cruise the net...it's much, much more
complicated than that.  Especially when you add in "class libraries", "jar
files", "precompiled portable object code", "just in time compilers", and so
on.

> Granted, OS X ships with a more evolved implementation of JAVA, but I am
> really curious, on a philosophical level, why this version of JAVA only
> works (allegedly) under OS X (besides Apple's decision to only develop it
> under OS X).

One of the benefits of moving to MacOS X is that Apple gains immediate
access to the *BSD ports of the various Java tools.  And there's far more
people working to improve Java's performance there than there are at Apple.

Also, Sun's reference implementation is written for Solaris.  Which has
much, much more in common with the *BSD world than the Mac world.  But even
the Solaris ports to *BSD require fairly substantial effort.

> Furthermore, besides being used for some fancy roll-over buttons, and useless
> menu animations, what good is Java actually within the browser environment (or
> even an OS)?

Java is a complete development language.  Just about any application that
you can write in C or C++ can be written in Java.  If you program very, very
carefully, it'll run on a lot of machines.

Sun introduced it as "Write once, run everywhere"; most developers refer to
it as "Write once, debug everywhere".

When it works well, you can end up with a program that will execute on a
Macintosh, a Windows box, and a UNIX box...while presenting a full GUI that
appears to be native to the platform you're executing on.  And, while this
application is completely dependent upon the Java virtual machine, it *can*
be completely independent of a web browser (but in practice most developers
don't take advantage of that).

> Sure, there are some hardware configurations products that are JAVA based,
> and which conveniently can be deployed on several platforms thusly, but I
> can count the number of such apps on one hand (now, server based JAVA is a
> different issue altogether, and I can see some of the benefits).

This is a pretty good site for disabusing oneself of the Java propaganda:
   <http://www.disordered.org/Java-QA.html>

mikel

PS: And we didn't even mention JavaScript...which, aside from the name, as
just about nothing in common with Java proper.


-- 
To unsubscribe:               <mailto:[EMAIL PROTECTED]>
To search the archives: 
          <http://www.mail-archive.com/entourage-talk%40lists.boingo.com/>

Reply via email to