Sun Microsystems officials announced recently that the Silicon Valley-based firm is set to take on a more modular approach to Java with its planned upgrade of Java SE Development Kit 7 (JDK 7).
“We’re working to define a modular form of the Java platform and its implementation; we’re working to evolve the Java Virtual Machine into a true, multilingual universal runtime for high-level languages; and finally, we’re doing things to make developers more productive,” said Mark Reinhold, principal engineer for Java SE and OpenJDK.
As Java has simply become too large, modularity is intended to address this situation, Reinhold said. This new modular platform would also mean that developers will not need to use a class path to search for classes and other resource files.
“If we have a modular platform, then we instantly almost address the problems of download size and file system footprint,” said Reinhold.
In fact, modularization of Java could lead toward a single Java implementation, said Robert Brewin, the Sun application platform CTO. “The modularity aspect gives us a taste of how perhaps we’re getting to a point where we can start to think about how we might end up with one Java”, he said.
One other advantage to modularizing Java is that the modularization can reduce fragmentation in small devices, as this fragmentation has been an issue on ME in the past. In his speech at the recently-concluded JavaOne conference, Brewin cited as an example the ability to enable a Bluetooth module built for an ME system to run an SE system.
The company is also eyeing several changes to boost the programming language and make programming easier. One change in particular that Reinhold noted was the use of a “diamond operator”, which would be used to instruct a compiler to duplicate tasks on the left and right side of a statement.
Also eyed for JDK 7 are ways to revise the language specification to increase the use of annotations. According to Sun’s announcement, Reinhold believes that “The point of this is to provide better information to static checker tools”.
Some JDK 7 features already are available, said Reinhold. For example, Milestone 3 of JDK 7 was made available last month, while the feature-complete Milestone 6 release is due in October. A release candidate, which would be the final version of JDK 7, is anticipated for release in February of 2010.
Improvements to the enterprise edition of Java via Java Enterprise Edition 6 are also in the pipeline. Such improvements include adding profiles and pruning this edition to make the release fit the needs of users, said Roberto Chinnici, a senior staff engineer in the Sun Java Enterprise Platforms Group. More specifically, the profiles enable a bundling of technologies from the platform. The Java EE6 is planned to be released this September.