- no
null
=> JavaSlang Option - no
throws Exceptions
=> JavaSlang Try - maximize
Immutability
and minimizeMutability
- immutable data structure => Immutables.org + JavaSlang Collection
- no
variable Mutability/Reassignment
=> AtomicRef, AtomicLong...
- no ORM => Jooq
- minimize runtime DI => explicit compile time DI
- maximize
Expression
and minimizeCommande
=> useHigh Order
functions - maximize
Pure Function
and minimizeSide Effect