~/talk

How functional programming change my Java code

Talkat JDD 2017 · 2017-10-03..10-04· [java, functional-programming]
links:none on file
slides:none on file

Describes applying functional ideas inside Java 8: adopts immutability, separates side effects and context, wraps effects in Option/Either instead of try/catch, and uses streams, trampolines for recursion and small pure functions. Reports reduced spec from ~1,000 to 150 pages by refactoring verbs/nouns/adjectives into reusable transformations, measures and fixes hotspots (notes some functional idioms can be ~100x slower), and claims the team delivered the app two years early while staying on the JVM and using Java 8 streams and Option/Either.

AI-written summary · about

  1. 0:00Introduction and disclaimer
  2. 1:14Object-oriented Java basics
  3. 4:15Design patterns and SOLID
  4. 9:27Functional programming concepts
  5. 11:37Side effects in code
  6. 12:42Understanding monads
  7. 14:32Mixing OOP and FP
  8. 17:11Recursion in Java
  9. 18:41Pattern matching in Java
  10. 20:27Pure functional in Java limits
  11. 21:09Immutability benefits
  12. 22:38Side-effect separation
  13. 23:21Context separation practice
  14. 24:28Business logic simplification
  15. 27:05SOLID with functional style
  16. 29:13Testing and performance
  17. 30:59Refactoring and multi-threading
  18. 32:46Convincing the team
  19. 33:30Real-world project example
  20. 34:38Q&A and resources
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.