From JShell to Jigsaw, reactive programming is built into Java EE

If we learned one thing from the JavaOne 2016 keynotes, it's that the Java EE platform is built to enable reactive programming.

It's a tall order to expect anyone to sit through all of the keynotes at a conference like JavaOne. It's not that they're tedious or boring; it's just that there are a lot of them. So for those who didn't have the time to sit through every keynote lecture, here's a look at the top five takeaways, with the theme of supporting reactive programming that runs through all of them.

#1 The biggest and the best companies choose Java -- still

There's a lot of crazy talk about Java's demise. But nobody is going to kill off Java so long as large and successful organizations bet their IT spending on it. Masahiro Yoshioka, staff manager of the IT Solution Division at Mazda, revealed that Java is part of both its cost calculation and global ordering systems, including mission-critical aspects of its automotive industry IT portfolio. Reactive programming and versatility are key. Java's ability to work with batch processed data for cost reduction and with real-time analytics to keep the parts supply chain running smoothly is what makes this versatile platform so essential. Even the robots on the assembly line in Mazda's mixed production facility are getting their instructions from Java programming. It was made clear at JavaOne 2016 that the biggest and the best continue to choose Java.

#2 JShell will fill the void of simplified scripting and development

In his keynote address which included a live coding demo, Mark Reinhold, chief architect of Java Platform Group at Oracle, opened the eyes of JavaOne attendees to various ways JShell, a new scripting specification to become part of the JDK, will change the way they do development. With JShell, programmers can write executable programs with less code than ever before; and built-in features for assisting in the development of code, especially when trying to pull disparate scripts together, will come as a delight to any developer who moves to Java 9.

#3 The Jigsaw pieces are coming together

Jigsaw won't be ready for launch quite as soon as attendees hoped, but Reinhold did take the time to whet the appetite of the development community for this set of modularization features. "We want it to be approachable, something everyone can use to write large-scale applications so that you can escape from classpath hell." And when it comes to modularity, the language architects are putting their money where their mouths are by using Jigsaw to modularize the Java platform itself. Modularity, scalability and classloader control will be baked right into the JDK itself, all thanks to Project Jigsaw.

#4 Following Ruby and Groovy, Java will become more concise

Java language architect Brian Goetz spoke about two simple ways his team intends to give programmers a break from writing tedious boilerplate code. Low value code, which is endemic to every piece of enterprise software written in Java, detracts from the true purpose of the software being written, while at the same time failing to offer any real insight into how an application works. Inferred typing is the approach being pursued to correct the problem, giving the compiler more responsibility in creating and maintaining the artifacts that would normally find themselves cluttering up what would otherwise be clean and concise code. Type inferences for local variables will help make code easier to read and easier to maintain.

#5 The Java EE is getting reactive

With big data, real-time, and near real-time streaming and analytics, along with other changes to the flow of data, more responsive applications are essential. Anil Gaur, group vice president of Cloud Application Foundation at Oracle, spoke about the importance of how the language team at Oracle believes that they have created an enterprise Java environment that is ready to meet the needs of microservice applications that are stateless, independent and scalable. Java EE 8 and 9 will focus strongly on resiliency, while built-in "circuit breakers" will isolate problems and standardized health reporting to help manage the environment.

With Java's already robust ecosystem and these reactive programming improvements, the Java platform is well-equipped to meet the ever growing demands of the enterprise.

Next Steps

The latest news from JavaOne

What happened at Jenkins World?

Why microservices is for everyone

Dig Deeper on Software development best practices and processes