ArchUnit, Unit Testing The Architecture
ArchUnit will help you whenever the compiler will not make it, especially in enforcing a package structure or architecture.
Designing Systems and Crafting Code
ArchUnit will help you whenever the compiler will not make it, especially in enforcing a package structure or architecture.
Today, I would like to take a step forward and check how well Java Streams behave when put under pressure.
In this text, the final summary of my categories theory series, I will use my spotlight and take a closer look at the relations between all three previously described functional containers, namely: Functor, Monad, and Applicative. Below, you will find a comparison of them in terms of: Theory Laws Methods Possibilities & Use Cases Theory … Read more
Today, I would like to create a separate text with the same topic but for Spring Boot 3 and Keycloak.
I will describe how you can secure your Spring Boot based REST API with the help of Keycloak.
Applicative is just another concept similar in meaning and history to Functors and Monads. Besides explaining the theory behind it, I will implement a simple Applicative. I will also use Optional, to show what advantages Applicatives may give us. The source code for this article is available in GitHub repository. Why Should We Care About … Read more
Functor is a concept originating from mathematics, to be exact, from a part of mathematics called category theory. Here I will try to give you some more insight into Functors — what they are, how they work, and what the theory behind them is. I will also implement a simple Functor to better understand how they work … Read more
Have you ever wonder what allMatch on empty Stream will return ? Here you will get all information needed to understand why it works this way.
Java code is complied to bytecode then JVM takes care of execution. Here you will learn what JVM is doing and how Java compilation works.
Here you will read learn how Optional evolution looked like from its release in Java 8 to present times and current Java releases.