Recent articles:
Popular archives:
Java: A platform for platforms
Sun's reorg may seem promising to shareholders but it's also a scramble for position. The question now is whether Sun can,
or wants to, maintain its hold on Java technology. Especially with enterprise leaders like SpringSource and RedHat investing
heavily in Java's future as a platform for platforms
Also see:
Discuss: Tim Bray on 'What Sun Should Do'
In a flurry of Java-related announcements, the company noted the pre-release availability of version 1.5 of the MRJ (Macintosh Runtime for Java) plus a preview of a soon-to-follow version 2.0 (already seeded to some developers), a new commitment to make all APIs in Rhapsody's "Yellow Box" program framework accessible through Java, and Apple's formal alliance with Sun and several other firms for future development of the Java Foundation Class (JFC) libraries.
But while these specific measures received generally favorable reaction, many developers also expressed caution about whether Apple's thrust into Java would be sufficient -- and whether even the current direction would be receiving continuing support. "I'm heartened by Apple's embracing Java," notes Bill Hofmann, Development Manager at Cypress Research Corp. (Santa Clara, CA). "But I've been burned before by Apple presenting good technologies and not following through."
If enough users ask for them, Yellow Box implementations on SPARCstations or other platforms also are conceivable, Iverson says. While there's no current call for such implementations or such a development effort, says Iverson, it's possible Apple might support some additions to the interface for Microsoft's version of Java as well. And while Apple will provide similar API access from C, C++, and Objective C, over time Iverson says Apple is moving toward the more object-oriented approaches. Eventually, "Java and Objective C will be the first among equals," he predicted. (See the story "Java development on Macintosh -- is it viable or not?," also in this issue of JavaWorld, for more details.)
By the time SDK 1.2 and MRJ 2.0 ship, Iverson says, Apple's contributions to the effort should make it possible for programmers -- and to some extent users -- to decide whether Java applications will retain a Macintosh look and feel when running on the Mac or present a more generic look and feel. Any such result, however, may be many months away.
Meanwhile, Iverson admitted, in the short term the JFC announcement is also meant to be read as a political message concerning Apple's intentions to play a part in the official Java community.
But failing that, Spenhoff says, a Macintosh should be a good choice. "Java developed to the 100% Pure standard will run on any Java-compatible VM," he notes. "Where people are competing is the richness of the development environment. And this is an area where both Apple and Sun have been famous in the past."
Furthermore, Spenhoff notes, Apple's support for the 100% Pure Java standard rather than Microsoft's proprietary version should give anyone looking for a desktop system more flexibility and independence. "Developers have lived through generations of software where they've been increasingly locked into vendors and platforms. What 100% Java brings them is the ability to unlock those limitations."
So far, say developers, many Web applications use Java only for part of their code -- leaving other elements dependent on the features of the hardware and the operating system. Given the relative size of the Apple and Windows markets, Apple may have a hard time convincing developers to include support for the Mac hardware in new tools and plug-ins. And without a full set of Mac-compatible tools and plug-ins, support for the Mac may be left out in larger programs as well.