It's been said that Java 8 is bringing Functional Programming to Java. In this article Ben Evans discusses what it means to be functional. By looking at the evolution of Java - particularly its type system, we can see how the new features of Java 8, especially lambda expressions, change the landscape, and provide some key benefits of the functional programming style.
With Java 8, annotations can be written not only on declarations, but on any use of a type such as types in declarations, generics, and casts. This article introduces the new type annotation syntax and practical tools to boost productivity and build higher-quality software.
Date and time are fundamental concepts to many applications, yet Java SE had no good API to handle them; until now! With Java SE 8, java.time provides a well-structured API to cover date and time.
In the first in a series of articles exploring Java-orientated micro-frameworks Dan Woods takes a look at Spring Boot. 11
This article surveys the impact the new OpenJDK Off-Heap JEP will have to empower Java HashMap with new off-heap capabilities, a radical departure from traditional Java priorities. 15
InfoQ caught up with Andy Piper, lead of the Eclipse Paho project, to find out more about the history of MQTT and why it is being used by internet scale companies.
Using so-called "matcher libraries" to implement custom assertions to make tests more readable and maintainable. 2
The authors compare different methods to compute the variance of a large data set using an imperative style, The fork/join framework and the new Streams API in Java 8 10
In this article we present some of the most common performance analysis antipatterns in the enterprise platform, expressed in terms of their basic causes along with remediation strategies. 1
ActiveJPA is a Java implementation of Martin Fowler’s Active Record over JPA and provides abstractions to simplify data access. In this article the primary committer illustrates ActiveJPA usage 7
Writing Java software that correctly makes use of concurrency requires careful thought. Static analysis tools can analyze source code or compiled bytecode to discover latent bugs hidden within code. 1