Designing Function Families and Bundles with Java's Behaviours Parameterization and Lambdas
summary
Claims that Java 8 lambdas and functional interfaces plus streams and predicates let teams parameterize behavior so most requirement churn becomes parameter tweaks not code rewrites, asserting the top 20% of changes that cause 80% of rewrites are avoided. Examples include a loan-selection case with loan-selection predicates and strategy map, command/strategy patterns, noneMatch/count stream checks, Lombok data classes and JUnit tests; demos build concrete strategies and run green tests showing the approach works.
AI-written summary · about
chapters (12)
- 0:00Start
- 0:32Plan
- 1:13User requirements are sinking sand
- 1:47Blaming it on the methodology
- 2:23Costs optimisation
- 4:13Main benefits of functional programming
- 6:03Objects vs functions
- 9:50Passing behaviors through interfaces
- 26:45Functional interfaces
- 31:17Using the strategy pattern
- 32:41using the command design pattern
- 37:00Decision trees
related talks
55mRefactoring to Functional Style
38mBoost Delivery Stream with Code Discipline Engineering
50mEmergent Design
41mArchitectures Using Functional Programming Concepts
26mInfinite Possibilities
58mFrom Zero to Live with Functional JavaScript Applications (Part 2)
01h 00mDesign Idioms from an Alternate Universe
26mThe Power Of Small Abstractions
