Everything you want (or need) to know about the new Java 8
Very soon after the James Gosling's Java language and its virtual machine (JVM) was introduced by Sun Microsystems in the late 1990s, it was king of the world, having kicked off the move toward confederations of connected devices that 15 years later is now called the Internet of Things. .
Java was in web servers and a vital part of the web services structure (now referred to as The Cloud), in mobile phones and in a variety of both wired and wirelessly connected: embedded devices (what is now called the Internet of Things). It is even the underpinning the open source Eclipse Integrated Development Environment adopted by many embedded design companies.
But with the acquisition of Sun Microsystems by Oracle in 2010 and along with it the rights and responsibilities for supporting Java, the corporate push seemed mainly toward its use and promotion in its business and corporate IT accounts. It remained alive and well in mobile and smartphones and is a vital part of what makes them the multimedia and multifunction marvels they are. But whether that had much to do with Oracle's efforts or just market and technology momentum remains open to question.
But like almost every large corporate IT-focused software and hardware company, Oracle had totally missed the device connectivity revolution that was occurring which Java - along with IPv6 in 2000 and 6LoWPAN in 2007 - helped kick start.
Now that everyone's attention is focused on the renamed connectivity revolution called the Internet of Things, Oracle this week has made an impressive bid to retake much of that lost ground.
After two years in development, Oracle Corp. rolled out its Java 8 implementation with a little bit of something for every segment of the connected environment, including servers, mobiles, embedded and IoT.
I have been looking over the wealth of information it has provided out and have made some tentative guesses about what is offering and how successful this roll out will make it in the new Internet of Things.
But first here is a summary of what the announceent consists, the services it will provide, and the support that will provided. In two words - impressive and overwhelming.
Java SE 8 featuresAmong other things, Java SE 8 has implemented a number of enhancements that it says enhance developer productivity through reduced boilerplate code, improved collections and annotations, simpler parallel programming models and more efficient use of modern, multi-core processors.
1) the JSR 335 Lambda Expressions for the Java Programming Language) which is aimed at supporting programming in a multicore environment by adding closures and related features to the Java language.
3) a set of Compact Profiles which are essentially a subset of the Java SE for applications that run on small devices. An additional benefit is that this new feature will likely make possible faster download times for apps that bundle their own Java runtime.
Also interesting to me is the removal of the "permanent generation" from the HotSpot Java Virtual Machine (JVM). I do not know how useful this will be to embedded developers, but the move does address in a small way the impact on deterministic performance represented by Java's memory management scheme.
Oracle Java ME Embedded 8 Early Access 2 is now available as a binary runtime for Qualcomm 6270T (ARM9) Development Platform, Raspberry Pi (ARM11) and ST Microelectronics STM32F4DISCOVERY (ARM Cortex-M4).
To make sure that this broad announcement takes and to build excitement amongst as broad a segment of developers as is possible, the company's OracleTechnology Network (OTN) is sponsoring an IoT Developer Challenge, giving developers an opportunity to win one of 12 trips to JavaOne 2014 by creating a Java Embedded application.
In addition, up to six student winners will receive laptops and certification vouchers. The deadline to submit video and project code is May 30, 2014. See Official Rules for details.
There is a lot in this announcement to absorb and to think about as it relates not only to traditional embedded applications and mobile designs, in the new IoT space as well. It is coming late back into the embedded IoT game, but from what I have seen so far, Oracle - and Java, will be a player there as well.
Look over the what Oracle has offered up and let me know what you think here in your comments or in blogs or more technical analyses you might want to post and publish on Embedded.com.
Embedded.com Site Editor Bernard Cole is also editor of the twice-a-week Embedded.com newsletters as well as a partner in the TechRite Associates editorial services consultancy. He welcomes your feedback. Send an email to firstname.lastname@example.org, or call 928-525-9087.