Core Java
-
Avoid Recursion in ConcurrentHashMap.computeIfAbsent()
Sometimes we give terrible advice. Like in that article about how to use Java 8 for a cached, functional approach…
Read More » -
How to Map Distinct Value Types Using Java Generics
Occasionally the average developer runs into a situation where he has to map values of arbitrary types within a particular…
Read More » -
Create your own AOP in Java
Introduction As you know AOP is one of the best features provided by Spring framework which provides utmost flexibility while…
Read More » -
Interface Evolution With Default Methods – Part I: Methods
A couple of weeks back we took a detailed look into default methods – a feature introduced in Java 8…
Read More » -
Using Java 8 Lambda expressions in Java 7 or older
I think nobody declines the usefulness of Lambda expressions, introduced by Java 8. However, many projects are stuck with Java…
Read More » -
Utility Classes Have Nothing to Do With Functional Programming
I was recently accused of being against functional programming because I call utility classes an anti-pattern. That’s absolutely wrong! Well,…
Read More » -
Minor GC vs Major GC vs Full GC
While working with the GC pause detection functionality in Plumbr I was forced to work my way through loads of…
Read More » -
Balanced Abstraction Principle
One of the things that make code complicated to read and understand is when the instructions inside a method are…
Read More » -
Joining Strings in JDK 8
JDK 8 introduced language features such as lambda expressions, streams, and even the new Date/Time API that will change the…
Read More »