From The Well-Grounded Java Developer by Benjamin Evans, Jason Clark, and Martijn Verburg
The JDK ships with a compiler to turn Java source code into class files. Despite that fact, few projects of any size rely just on javac. Build tools are the norm for a number of reasons:
Automating tedious operations
Ensuring consistency between developers
Although many options exist, two choices dominate the landscape today: Maven and Gradle. Understanding what these tools aim to solve, digging below the surface of how they get their job done, and understanding the differences between them – and how to extend them – will pay off for the well-grounded developer.
From The Well-Grounded Java Developer, Second Edition by Benjamin Evans, Jason Clark, and Martijn Verburg
This article discusses classloaders and reflection in Java.
After reading this article, you will be able to:
– Differentiate between pure and impure functions
– Provide code examples in which impure functions cause unpredicted code behavior.
In this video, Julien Ponge takes a deep dive into Vert.x core APIs, reactive SQL client, chaos engineering and resilience of HTTP client, as well as real-time web apps.
From Functional Programming in Kotlin by Marco Vermeulen, Rúnar Bjarnason, and Paul Chiusano
This article covers how monads, monad combinators, and functors work and why you should be afraid of them.
From Spring Quickly by Laurentiu Spilca
In this article, we discuss the scenario in which Spring needs to inject a value into a parameter or class field but has multiple beans of the same type to choose from.
Brian Goetz is one of the leading figures in the Java world. As Java Language Architect at Oracle, he helps steer the direction of the language’s evolution and its supporting libraries. He has led the language through several important modernizations, including Project Lambda. Brian has a long career in software engineering and is the author of the best-selling book “Java Concurrency in Practice.” (Addison-Wesley, 2006)