Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Java house opening on Mac in January

2 views
Skip to first unread message

Dirk Bockstegers

unread,
Dec 2, 1995, 3:00:00 AM12/2/95
to
MacWEEK NOVEMBER 30, 1995 [On-line Exclusive]

Java house opening on Mac in January

By James Staten (James_...@macweek.ziff.com)

Next month Mac users will get their first taste of Sun Microsystems Inc.'s
Java, a programming language the company brewed that has greatly extended
the capabilities of the Internet. Java's usefulness will also boil over from
cyberspace to the desktop in the near future.

In January, Sun will ship the Macintosh Java interpreter, which will allow
its HotJava browser to work on the Mac. The next version of Netscape
Communications Corp.'s Navigator 2.0 World-Wide Web browser, also due in
January, will feature a Java plug-in; and Spyglass Inc. plans to provide
Java support for its browser, Enhanced Mosaic, in early 1996.

In addition, Netscape and Sun will announce this week JavaScript, the next
generation of Netscape's LiveScript. JavaScript will allow developers to
build Java applets through scripting rather than by programming.

Java applets add functions to a browser, from support for streaming
animation to new client-server tools such as a live, interactive stock
ticker. Java's main advantages are that its applets are small (animation
applets average 5 to 10 Kbytes) and they work on multiple platforms. Thus,
one version of an applet can run on Unix, Windows 95 and the Mac OS.

Most articles about Java have portrayed it as a simple extension of HTML
(Hypertext Markup Language). But it is a far more complex object-oriented
programming language derived from C++.

Java is unique because its applets are written not for Solaris on a SPARC
processor or Macintosh on a PowerPC but for the Virtual Machine, a runtime
engine that uses an interpreter to translate Java instructions into native
calls on each platform (see chart). The Virtual Machine acts like a program.

Programs that run inside of other programs are small by nature because they
are limited to performing functions allowed by the parent. Yet the Virtual
Machine is built much like an OS and, thus, does not limit the possibilities
for a Java applet.

Being an object-oriented language adds additional advantages. Java's
programming syntax is much simpler than C++, and many commands that often
lead to bugs are eliminated entirely. For example, there are no pointers in
Java. These commands are used in C++ mainly for memory management and allow
a program to seize and release memory for various functions. In Java, all
memory allocation is controlled by the interpreter.

Java also uses a construct called classes, collections of rules for an
applet's behavior, that eliminate many lines of code from C++. Since most
actions, such as displaying windows and passing data to a server, are common
among all applets, each program does not need to contain these instructions;
rather, it just makes calls to the class. Even applets that create new
classes of functionality are fairly small, since once the class is built
there is no need for the programmer to repeat any instructions; he simply
calls the new class.

"We are currently working on 3-D and database connectivity classes," said
Kim Polese, marketing manager for Java Products at Sun. "The 3-D class will
be technology agnostic so an applet can work with all kinds of 3-D
technologies."

Classes and Java's limited syntax not only ease the development process but
provide security. For example, most viruses need free access to memory and
file directories to do their work. One of the basic classes built into Java
controls and restricts this access. Further, once a program is written, the
code is looked over first by the compiler and again by the Virtual Machine
to make sure it does not violate the rules of conduct.

"[Sun] has taken out what they feel are dangerous parts of the [C++]
language," said Greg Galanos, president of Metrowerks Inc. of Austin, Texas,
which plans to deliver a Java plug-in for its Code Warrior development
environment in May. "Every bytecode that comes down the wire is validated,"
he said.

Neither the compiler nor the Virtual Machine will accept or execute code it
does not recognize, not even encapsulated or hidden code; thus, hackers
can't bury a C++ virus inside a Java applet. The Virtual Machine also
includes preferences that let users restrict the flow of data through a
network connection.

"Plus, [Java] understands HTTP [Hypertext Transport Protocol], FTP and other
network protocols inherently," said Galanos, adding that this allows every
Java applet to be network-ready automatically.

Since Java is a language and not simply a display system like HTML, it has
implications beyond the Web. Polese said Java can build stand-alone
applications, possibly even replacements for mainstream products such as
spreadsheets.

"The reason people are talking about Java and the Web is because that's all
they can see now," said Hillel Cooperman, spokesman for Natural Intelligence
Inc. of Cambridge, Mass., the makers of a Java development environment
code-named Roaster, that is due later this month (see MacWEEK, Oct. 23,
Page 4).

He said Java's possibilities are as broad as they are for C++ but that it
should not be viewed as a possible replacement for the veteran language
because all Java applets must run through the Virtual Machine and an
interpreter. This makes Java significantly slower than native C++ code.

"Its about 10 times slower than C right now," said Polese. Yet she added
that its performance has not been a factor because of the greater
bottlenecks, such as the lack of bandwidth, that plague the Web and the
limited tasks programmers have asked Java to perform. Polese added that the
Java team is working on the language to improve its performance and should
have a faster release ready by summer.

"You wouldn't want to use your browser to edit Quark[XPress] files,"
Cooperman said. "If a large company wants to provide its employees with
access to a large supply of data, some built in 4D, some in Lotus Notes,
some in FileMaker, et cetera, they currently have to give every employee a
copy of each of these apps. But with Java, as long as an applet is built for
these programs, you can view all of the data through one simple interface.
That's the beauty of Java," Cooperman said.

Yet a desktop application such as QuarkXPress could be made Java-aware,
which opens up a whole new world of possibilities, according to developers.

"If you can build Virtual Machine support into a Photoshop or a FreeHand,
then they become network-aware, allowing users to blend content from the
Internet into a document or purchase and download new plug-ins from the
net," said Galanos.

In the short term, though, Java is most interesting to developers as an
Internet interactivity tool. But being a programming language means Web page
designers will need developers on staff to use it. This fact alone could
slow its acceptance.

----------------------------------------------------------------------------
Starting points

http://java.sun.com/applets/index.html
An index of Sun Java applets

http://www.gamelan.com
An index of third-party Java applets

----------------------------------------------------------------------------
Applet homes

http://www.earthweb.com/java/Netris/
An interactive game based on Tetris

http://www.dimensionx.com/chris/imageproc/fade.html
Demonstrations of fading and embossing effects.

http://www.millenniumweb.com/
A live message board that display news and information

http://java.sun.com/JDK-prebeta1/applets/MoleculeViewer/example1.html
Renders 3-D molecular models and allows user to rotate them

http://www.intrepid.com/~robertl/index.html
An applet that calculates the commission on a securities trade

http://www.broadcom.ie/~kj/java/mortgage.html
A mortgage calculator

http://www.ctr.columbia.edu/~nemo/java/trex.html
A simulated interactive commodities exchange

http://cirrus.sprl.umich.edu/javaweather
Interactive weather maps updated hourly

http://cirrus.sprl.umich.edu/javaweather
A presentation tool

http://www.ebt.com/WebTap/home.html
A stress tester for Web servers


MfG, Dirk Bockstegers

E-Mail
Internet: d...@big-biz.gun.de CompuServe: 100533,303

0 new messages