New in Spring Framework 5.0: Functional Web Framework

  • View
    1.679

  • Download
    0

Embed Size (px)

Text of New in Spring Framework 5.0: Functional Web Framework

  1. 1. 2017 Pivotal New in Spring 5: Functional Web Framework Arjen Poutsma Pivotal
  2. 2. 2017 Pivotal About Arjen Twenty years of experience in Enterprise Software Development Joined SpringSource in 2005 Development lead of Spring Web Services, Spring MVC, Spring Scala Working on Spring 5
  3. 3. 2017 Pivotal I do like annotations...
  4. 4. 2017 Pivotal ...but there are downsides Magic No link between data and behavior Reection Performance Type Erasure
  5. 5. 2017 Pivotal Design Goals Functional Style java.util.function java.util.stream More library; less framework Explicit Customizable No reection
  6. 6. 2017 Pivotal Functional Programming (in Java 8)
  7. 7. 2017 Pivotal Immutability No change after construction Builders Thread-safety e.g. String toUpperCase() StringBuilder
  8. 8. 2017 Pivotal First-class Functions Functions as rst-class citizens Functions as arguments Functions as return value Reusability e.g. String indexOf(char) vs indexOf(Predicate)
  9. 9. 2017 Pivotal Pure Functions Same result given same arguments No Limit side effects Application boundaries Testability Cacheability Parallelization
  10. 10. 2017 Pivotal
  11. 11. 2017 Pivotal Demo
  12. 12. 2017 Pivotal Function