How to prepare for coding along
Ensure that you have:
-
JDK 17 or above. Tested with OpenJDK 11 Link: http://jdk.java.net/17/
-
Your favorite Java IDE. IntelliJ IDEA Ultimate was used to develop this kata.
-
Read any
NOTE
comments -
Fix the code by using
HINT
andTODO
comments. -
Have fun!
|____LICENSE <--- License for this code base
|____README.adoc <--- This file
|____assets
| |____images
| |____DukeLambda.png <--- Image used in README
|____src
|____none
|____cgutils
|____functional
|____AllConstants.java <--- Constant values used in all code
|
|____Calculator.java <--- Basic calculator
|
|____Calculator1.java <--- Custom calculator
|____Calculable1.java <--- Calculator basic interface
|
|____Calculator2.java <--- Reusable calculator for different Types
|____Calculable2.java <--- Generics in the interface
|
|____Calculator3.java <--- Single operation calculators
|____Calculable3.java <--- Single operation interface
|
|____Calculator4.java <--- Lambda magic
|____Calculator5.java <--- Higher Order Functions #1
|____Calculator6.java <--- Higher Order Functions #2
|____Calculator7.java <--- Using FunctionalInterface and default methods
|
|____JavaUnaryOperation.java <--- Java Function API
|____UsingBiFunctionAsCalculator.java <--- Java BiFunction API