Java 8 released - the end of object oriented programming?

by Martin Jacobs GVP, Technology

Today, Java 8 was finally released. It has been a long time in the works, and there are some new exciting capabilities that have been added. Obviously, the most significant one is the full support for lambda expressions and closures.  It brings more functional programming concepts into the language.

With these changes, it looks like the pure smalltalk style object oriented programming has made room for more functional programming ideas. In the early days of Java, there were many articles about how to really do proper object oriented programming. There were many courses around thinking in objects, and guides around moving from structural programming to object oriented. Nowadays, everything is around functional programming concepts. Popularity of functional programming is growing, and the coursera courses around scala have been some of the most popular MOOC courses. One of the standard questions in interviews for candidates has always been to explain the concepts of inheritance, polymorphism and generics. Now, questions around closures, map and reduce have become the standard fare for new hires as well.

It is going to be interesting to see how this plays out, how the evolution of programming languages is going to affect the technology industry.

How quickly will the establish product vendors adopt and incorporate Java 8 into their products? One of the main challenges for Java in the past has been the slow adoption, and one of the key drivers of market share for Java has been the product offerings available on the market, such as commerce platforms, content management solution and full ERP stacks.

Java has remained one of the leaders in the Tiobe Index. The popularity of the Android platform has been a big contributor to that. Therefore, another interesting thing to look out for is whether Android will adopt these changes, and incorporate them onto the Dalvik VM.

Lastly, it will be good to see how this plays for the emerging functional programming languages, especially Scala. Scala has gained traction, and even though the syntax receives some criticism, a lot of the scala concepts are visible in the Java 8 release. Will Java regain some of its coolness, or will folks continue to be drawn to newer languages?  Will the new JavaScript engine in Java 8 have an impact?

Overall, I think this is an exciting release, and for anybody working with Java fairly regularly, an important update to learn about.