internet.com Developer's Forum
Magazines

webreference.com

Java Boutique

Search Engine Watch

PC Webopedia

The Web Developer's Virtual Library

Java Jolt
by David Wood

Faster, Faster

Perhaps the software industry does learn, eventually. If nothing else, major software houses are perhaps inspired by the I-was-here-first successes of the Web industry.

Or perhaps they have an eye on the successes of systems developed recently that have been characterized by voracious demand for feedback from the user community, and frequent and lavish updates by organizers.

Sun certainly seems to be paying heed to the new rule: "Update early and often." Obviously engaged in a serious effort to deliver promised Java features as fast as conceivably possible, Sun lets nary a week go by without releasing another version of an API or another addition to its Web site.

This past week has seen the release of substantial new documentation for no less than four major APIs, a second developer release of the Java Foundation Classes, and a complete overhaul of the Swing/Java Foundation Class documentation.

Of all the much improved new Swing documentation (which, in case you haven't been following along with us, has been preoccupying us over the past several issues), we found the new overview page to be particularly rewarding in terms of clarity and brevity.

Most welcome of all, though, is the newly added Swing tutorial--even as rough as it is, it's still an indispensable read for really understanding how the Swing components work and how they're put together.

Another must see is the UI screenshots page, demonstrating Swing's much-touted UI switching capabilities to considerable effect.

It's probably prudent to take a brief look at a few of the other updated or newly released APIs. We've mentioned Java3D in the past; this past week marked the release of the 1.0 specification.

My examination is that of a software expert and a 3D layman, but in as much as I understand it, I am quite impressed by it. The system rationally addresses performance concerns and does an excellent job of leveraging Java's overall clarity and simplicity of structure. Not that you could call this API simple--given its size and inherent organizational (not to mention mathematical) complexity, this is easily one of the most complex and sophisticated API chunks to date.

The overall approach seems to be the creation of something much more than just a display system. Our first few passes through the API itself reveal a structure for creating a fully functional 3D object environment, with three-dimensional objects that contain extensive display state; potential for independent, internally, and externally interactive or time-based behaviors; three-dimensional sounds; collision detection; and multiple rendering modes supporting different degrees of tradeoff between predefined behavior and optimization of the display system. This is no small feat. In fact, it's a landmark achievement in three-dimensional graphics software.

Another rapidly developing system (set of systems really) that it'd be a good idea to keep your eye on is the Java Media Framework. Another example of Sun taking its role as Java standards maker to new heights, this is, much like Swing's global definition for Undo functionality, an example of system architects advancing standardization among applications in new directions.

The JMF is ostensibly for organizing and synchronizing the bidirectional flow of "media" within Java applications. What we see when we look at the spec is a growing system for managing multimedia information. If a RealAudio or VDO video codec were to be incorporated into Java, it would be here, as a "media source," where it could be attached to and controlled by a "player," and tracked with "media events."

There are also indications of support for video and audio input systems, and thus, ultimately, for things like audio- and videoconferencing. Unfortunately, broken links in the API prevented us from a thorough examination of this system. In any case, it's very ambitions, and as we couldn't help observing over and over again while we were reading the overview, it's very much the sort of thing that most multimedia application developers have become accustomed to writing themselves over the years. For Sun's stab at a generic multimedia system to gain acceptance would be a major coup for JavaSoft.

Everyone knows that most programmers spend most of their time rewriting the same basic utilities, all the different versions of which end up quite incompatible and, on the whole, very expensive. Of course, for everyone to use the same standards for getting things done, these standards have to be the best available for handling everybody's individual predicaments--or at least a very, very good compromise for all the parties involved.

Until now, of course, no one has even attempted so many ranging feats of high-level software standardization, but in many ways, as we've said before, the Java team seems to have an unparalleled degree of organizational panache.

Certainly, if the whole community of Java developers takes up even a fraction of the framework provided for them, it will have been a move unparalleled in recent software engineering history. Of course, all of these new APIs are still ultimately some distance away from everyday use. Moreover, the Java industry itself is still an unknown quantity, even now waiting to see what it will become.

As usual, hoping for the best and prepared for the worst, we're waiting right along with it.

Past installments of Java Jolt


http://www.internet.com/
Web Developer® Home Over a dozen topics in detail Live Chat Downloads Book and Product Reviews Threaded Discussions How-To/Articles/Links Developer Daily News Subscribe Search Corporate Information Advertise Events Publications internet.com Home