Apple's JavaOne session this morning, Tech Manager Francois Jouaux and several other Apple representatives laid out the case for Java on the Mac, and why Java developers should develop on and for the Mac.
Saying that basic support of J2SE wasn't good enough, Jouaux went into Mac technologies that help Java applications work better. These include the Quartz Extreme graphics technology, which provides a speed boost to Java applications on Java 1.3.1 on Mac OS X 10.3, and for both Java 1.4 and 1.5 on the upcoming "Tiger" release of Mac OS X. He also pointed out how the 64-bit G5 processor improves performance for
doubles, since a G5 register can store a 64-bit value with a single machine-code instruction. He also pointed out the enterprise support of the XServe, which bundles JBoss, tomcat, WebObjects, and Apache Axis web services.
Today's announcements included improved support for Java in XCode, which now provides:
- ability to merge or copy jars
- ant and JUnit integration
- Java class modeling
- Java CodeSense
- improved deployment options
- J2EE XDoclet tasks from XCode
Matt Drance demo'ed the new XCode features, showing a Java 2D demo deliberately hobbled by unnecessary object creation in its animation loop. Using Apple's Shark tool, called with a simple
-XrunShark command-line argument from XCode, he showed how to time-sample a running application, narrow down the slow parts, and bring them up in the XCode editor. This feature boost for XCode is available for Panther, the current Mac OS X release, and is available from the Apple Developer Connectionsite.
Next up, Stuart Cheshire spoke about the Rendezvous self-networking technology, which allows TCP/IP devices to assign their own addresses (if necessary, for example in a household network without DHCP), assign their own names, and use multicast discovery to browse the network for Rendezvous services. A huge hit in the printer world, Cheshire explained how an Apple VP was able to print transparencies to a network printer at a recent conference, completely without configuration and before the conference's surly tech guy could even finish his "we don't work with Apple's, they're so hard to work with" speech.
Of greater relevance to JavaOne attendees, Cheshire and fellow presenter Roger Pantos announced a Java library to use Rendezvous. Of particular interest was Apple's decision to re-make the API to make it more palatable to Java developers, by employing Factory and Listener metaphors and fashioning objects from the straight-C API (Apple's done this before, of course, in the form of QuickTime for Java). The Java bindings are currently available as part of theRendezvous project in the Darwin open-source cvs repository. Cheshire and Pantos showed off the technology with a peer-to-peer chat application, written in Swing and Rendezvous and running on Windows and Mac laptops.
In a final bit of news, it was announced that the Java labs across the street at WWDC have filled up, so new sessions have been set up for Thursday. Registration for these sessions is at http://seminars.apple.com/private/wwdcjavalab