Twenty years on, Java is still rolling right along. The JavaOne keynote address, given Sunday afternoon in San Francisco, had a somewhat reverent tone, as it covered both the past and future of the platform.
Georges Saab, vice president of development at Oracle, gave an extensive history of the platform at the start of his keynote address. He showed a video of language creator James Gosling discussing the ideals that motivated the creation of the language: computing devices.
(Related: Why Java has lasted so long)
That, said Saab, brings Java today right back to where it began: on things—the Internet of Things, to be exact. To this end, he announced that Oracle is working to bring Java applications into Oracle’s cloud services, in containerized forms.
Mark Reinhold, chief architect of the Java Platform, remarked on Java’s 20-year history: “One of the keys to Java’s success in the past—and the future—is the way in which we evolve. The general method is to identify a pain point, figure out what the missing abstraction in the platform is, and do it in a way that makes it fit in with everything that is already there. Ideally, a new abstraction should look like that abstraction was there from the very beginning. We can’t always pull that off, but I feel we’ve done a fairly good job.”
Reinhold said that the goal has not been to keep up with the latest cool thing. “The goal is to keep improving developer productivity over time while retaining Java’s key values of readability, simplicity, universality and compatibility,” he said.
Reinhold then discussed the future of Java—more specifically, Java 9 and 10. One of the major changes for Java 9 was Project Jigsaw: an effort to modularize Java. He explained that the way developers will see this is through the new modules system. Modules are a container of packages that also describes how it will relate to other modules.
Modules will contain the names of every other module upon which they depend, allowing developers to be sure nothing is missing. Modules also will not interfere with each other, removing the potential for conflicts.
JavaOne will host a number of Jigsaw-focused talks and hack sessions, allowing developers to start early on acclimating to JDK 9 and the new module system.
“This has been a long time coming,” said Reinhold. “We started working on this in 2008, but it moves the platform forward in a thoughtful way while making people more productive.”
Java language architect Brian Goetz then took the stage to discuss what happens to Java after Java 9. Java 10 and beyond, he said, will focus on improving the performance of the JVM by getting it closer to the hardware.
Goetz said that Project Valhalla is about specialized generics and value types. This will allow developers to process raw data without all the overhead objects impose.
Project Panama, on the other hand, is about optimizing the intersection of Java and other languages, such as the C code it is compiled to. The project will allow for data layout control, as well as a new implementation of arrays.
“These are two fairly large projects, they’ve been going on for about a year and will be going on for quite a bit,” said Goetz.
JavaOne continues for the rest of this week.