JavaOne 2013 has been held in San Francisco recently. September 22, a strategic keynote speech from Oracle employees Peter Utzschneider, Nandini Ramani and Cameron Purdy kicked off the celebrations and lasted until September 26.
This is the 18th JavaOne Congress, and the Java community is not showing signs of slowing down. Utzschneider tells viewers that Java is still the world's first development platform, and that the number of Java user groups is growing at a rate of 10% per year.
The future of Java
Ramani explores the current state of Java and how Java has several different SDKs, with just a few examples, such as Java SE 7, CDC 1.1 (based on SE 1.4.2), CLDC (based on SE 1.3), and Java ME. In the past, these implementations have served the specific vertical market well, but over the years each of these implementations has evolved to become increasingly isolated. In Java 8, the Compact profile replaces the CDC.
The APIs between Java me and Java SE are similar, and the Java language supports all the features of both. Java 8 brings a unified platform: Code portability, generic APIs and tools-from SE Embedded development to server-side Java EE development. There will be only one type of Java developer in the future.
Other elements of the Java Platform Strategy include synchronous Publishing (now available for download in the Java 8 Preview) and working with partners (ARM, Freescale, and Qualcomm) to make Java a first-class citizen on a chip. In order to be able to simply migrate and extend the Java Embedded, Oracle launched the Java Platform Integrator project in August.
Java EE 7 has been released in the past summer, and the last two sessions of the JavaOne Congress have discussed it, which can be seen as an important milestone. Purdy mentions that Java EE 7 focuses on three aspects: developer productivity, meeting business needs, and HTML5.
Two years ago, when Java EE 7 was announced, the theme was the cloud. Java EE 7 now has a number of easy-to-use features for cloud deployment, including security enhancements, default resources, database structure generation, RESTful service client APIs, and JSF skins for multi-tenant applications. Finally, Cameron announced that the Avatar Project is open source from now on. Avatar is similar to Node.js, but runs on the JVM.
Java 8 is revolutionary and Java is back.
Java 8 is one of the most important keynote speeches in this Conference, as evidenced by Mark Reinhold's technical keynote speech. Java 8 contains a number of new features, including the new date and time APIs (JSR 310), the Nashorn JavaScript engine, type annotations (JSR 308), Compact profile, and lambda projects (JSR 335).
Lambda is the largest single upgrade of the programming model, larger than any previous upgrade, or even larger than generics. We have carefully coordinated and improved the virtual machines, languages, and libraries, the first time since Java. But the result still feels like Java. --mark Reinhold
Oracle Java language architect Brian Goetz continues to show how lambda expressions remove a large number of boilerplate files that are used only to express simple ideas. Before lambda expressions occur, developers often use the crappy "beef loaf ratio (beef to bun Ratio)" method to express ideas, usually with internal classes. Goetz shows the following example:
collection<person> people = ...;
iterator<person> IP = people.iterator ();
while (Ip.hasnext ()) {person
P = ip.next ();
if (P.getage () >) {
ip.remove ();
}
}