From Imperative to Functional
summary
Explains practical techniques for adopting functional programming while working in an existing imperative, mutable codebase. Describes incremental approaches and patterns (e.g., isolating pure functions, immutable data structures, minimizing side effects) and how to refactor code to move toward a more functional style without rewriting everything.
AI-written summary · about
chapters (17)
- 0:00Introduction
- 3:10Red thread project and unit tests
- 7:07Initial imperative implementation
- 8:31Side effects problem
- 9:35Avoiding side effects in Java
- 10:59Switching to functional paradigm
- 12:44Functional programming tools
- 15:34Java lambdas and closures
- 16:39Higher-order functions
- 19:11Eliminating side effects
- 21:42Currying and partial application
- 23:52Filter function and streams
- 28:55Final functional version
- 29:39Comparison with Haskell
- 35:41Paradigm shift
- 38:11Functional programming benefits
- 40:47Q&A
related talks
01h 00mImperative vs Functional: Which one to Choose?
46mThe path to declarative programming
59mForget OO and Think Functionally!
36mHow functional programming change my Java code
27mFunctional Programming for Pythonistas
44mFunctional Programming You Already Know
49mFunctional Core for a Side-Effect-Free Application Core
31mA Primer on Functional Programming
