Five Years
Mac OS X has been particularly good to the Java developer
Mac OS X was a long time coming... practically a decade, depending on how you account for the false-starts and misfires of Apple's post-System-7 operating system strategy (do the terms "Copland", "Pink", and "Taligent" give anyone shivers?). One of the most striking advances was the state of Java on the platform. After getting out a pretty good JDK 1.1 implementation for the Mac OS 8 series and getting the Mac community to standardize on the Apple VM (there were lots of variant VM's in the mid-90's, including those from Metrowerks, Microsoft, Netscape, and Roaster, plus an abandonware 1.0 JVM from Sun), the roadmap sort of froze in its tracks. The rest of the Java world moved on to Java 2, and Apple gave no hint of its plans. At one point, Apple even claimed that not moving to Java 2 was a good idea, since that was what Microsoft was doing.
Not surprisingly, a big part of the problem was what we on the mrj-interest list called "latent subtle Unixisms". In short, the further an OS gets from the U*ix view of the world, the less suited it is to Java. The Classic Mac OS posed many challenges to a Java implementation, from its lack of pre-emptive multitasking or a command line, to the fact that it would let you name all of your drives the same thing, which confused the heck out of java.io.File.
When Mac OS X released in 2001, its grounding in BSD suddenly made it far better-suited for a Java implementation. Java 1.2 got skipped, as Mac OS X was able to ship with a reasonably current 1.3 implementation. Java 1.4 was a somewhat long time coming, due to Apple ditching the last vestiges of its Classic-era AWT, implemented with the Carbon API's, in favor of a newly-written Cocoa implementation. But Apple's Java 5 has tracked reasonably closely behind the official drops from Sun, held back primarily so that it could ship with Tiger (Mac OS X 10.4) and use API's in that release. And its native Swing look-and-feel has won raves for its attractiveness and fidelity to user expectations on the system (chat me up about button order and position in JOptionPane dialogs sometime).
So the wait for Apple to get its JVM out has gone from years to months and now maybe even less. For the first time, they've offered a pre-release of a non-final JVM, releasing a developer preview version of Mustang. A message to Apple's java-dev list, Available Now: Java SE 6.0 Release 1 Developer Preview 1 (Intel), announces the first public build of Mustang for the Mac. It says that a PowerPC developer preview is coming, and that "we just wanted to get 1.6 out as fast as possible." This preview is available at the Apple Developer Connection (registration required).
Your editor has been developing Java almost exclusively on the Mac for 10 years, and with that perspective, it's remarkable how much life has improved for the Mac-based Java developer.
Also in Projects and
Communities...
as noted with an e-mail screenshot in Ludovic Champenois's blog Yet another Java historical landmark...., the Java EE 5 spec has been approved. As seen on the results for the Final Approval Ballot, the ratification was unanimous, with comments including Sun Microsystems' "Hurrah! Hurrah! Hurrah!" and Hani Suleiman's "Wheeeee!".
In today's Forums,
avinashdha asks about JAXB
Compatibility
We have various objects that have decorated member variables that get serialized into FastInfoset and sent over the wire. Now the question I have is regarding backwards compatibility and forwards compatibility. If I add member variables serialize them and send them over to a node which doesn't have the latest code for the class the deserialization shouldn't be a problem right ? Secondly would the same work if I removed or renamed a field?
haroldcarr has aWelcome to a new WSIT forum:
"Welcome to the Web Services Interoperability Technologies (WSIT) forum. This is the place to ask questions and post comments on Sun's Project Tango - an open-source project to provide web service features such as bootstrapping, optimizations, reliable messaging, security and atomic transactions. We are testing the WSIT codebase with Microsoft to ensure interoperability of these features with Windows Communications Foundations (WCF - aka Indigo)."
David Walend describes Tilting at the Generics Windmill in today's Weblogs. "I'm doing a Community Corner talk at JavaOne, on ways to make generics easier to use. Here's what I'm going to try to say in less than twenty minutes."
Newly-published author Vikram Goyal talks up his topic in
Pro Mobile Media API Book released: "The first book devoted to MMAPI has been released - learn to add audio/video/tones/MIDI to your Java enabled phones."
In
David Berlind of ZDNet sees the light, David Van Couvering writes:
"David Berlind has the "aha" moment with the potential for Java DB as browser-side storage"
In Also in
Java Today,
it's not unreasonable for an enterprise project to start with MySQL and simply stick with this database as the project grows, ultimately moving up to MySQLCluster for higher availability and performance. But replication can be a problem, due to the differences between masters and slaves in the cluster. In Advanced MySQL Replication Techniques, Giuseppe Maxia writes, "using features introduced in MySQL 5.0 and 5.1, it is possible to build a replication system where all nodes act as master and slave at the same time, with a built-in fail-over mechanism."
"In the tradition of Spring, JBoss offers Seam, which uses a declarative state model, extensive use of annotations, and two-way dependency injection to make automation of huge portions of your complex Java EE apps not just possible, but downright sensible." Mark Smith has an introduction to this framework in the DevX article Discover Seam and Sew Up Your Java Projects Faster than Ever, in which he says "much of the data movement and framework/API manipulation work that enterprise Java developers have drudged through for 7 years disappears with Seam."
In today's java.net
News Headlines :
- Java EE
5 JSR Passes Final Ballot - EJB 3.0
JSR Passes Final Ballot - Apache Axiom 1.0
- Restlet 1.0
beta 10 - Java Parallel
Processing Framework 0.16.0 - DB Visual
Architect for Eclipse (DBVA-EC) 3.1 SP2 - iScreen 0.9.1
Registered users can submit news items for the
href="http://today.java.net/today/news/">java.net News Page using our
news submission
form. All submissions go through an editorial review before being
posted to the site. You can also subscribe to the
href="http://today.java.net/pub/q/news_rss?x-ver=1.0">java.net News RSS
feed.
Current and upcoming Java
Events :
- May 3-4, 2006 - Sun Tech Days - Johannesburg
- May 7-9, 2006 - Rocky Mountain Software Symposium: Spring Edition
- May 8-10, 2006 - Eclipse Forum Europe 2006
- May 8-12, 2006 - Enterprise Architektur Konferenz
- May 8-12, 2006 - JAX 2006 - Konferenz für Java, XML, Web Services
- May 10-12, 2006 - The Ajax Experience 2006
- May 16-19, 2006 - JavaOne 2006
- May 19-21, 2006 - Central Ohio Software Symposium
Registered users can submit event listings for the
href="http://www.java.net/events">java.net Events Page using our
href="http://today.java.net/cs/user/create/e">events submission form.
All submissions go through an editorial review before being posted to the
site.
Archives and Subscriptions: This blog is delivered weekdays as
the Java
Today RSS feed. Also, once this page is no longer featured as the
front page of java.net it will be
archived along with other past issues in the
href="http://today.java.net/today/archive/">java.net Archive.
Mac OS X has been particularly good to the Java developer
- Login or register to post comments
- Printer-friendly version
- editor's blog
- 352 reads





