Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

KotlinConf - Kotlin and Spring Boot, a match made in heaven


Published on

Despite being quite "new", Spring Boot has seen a spectacular start as an amazing kickstarter for Spring-based application.
You can now start your project in a matter of minutes, not days!
On the other hand, you're using magic that read annotations and run the code in obscure way.
Wouldn’t it be great if we could use a language and API that make this magic explicit?
In this talk, I’ll live migrate a Spring Boot "traditional" application to Kotlin DSL.
Come discover how you can now cut through all the mystery and take back control of your code.

Published in: Technology
  • Be the first to comment

  • Be the first to like this

KotlinConf - Kotlin and Spring Boot, a match made in heaven

  1. 1. @nicolas_frankel Kotlin and Spring Boot A match made in heaven
  2. 2. @nicolas_frankel Me, myself and I ● Kotlin fan ● Spring Boot lover
  3. 3. @nicolas_frankel European alternative to the “big” cloud-computing players ● Privacy-minded ● Great support
  4. 4. @nicolas_frankel Spring Boot ● Open Source ● Pivotal ● Spring Framework ● Convention over configuration
  5. 5. @nicolas_frankel The issue ● Magic ○ Via annotations ● The solution? ○ Functional configuration
  6. 6. @nicolas_frankel
  7. 7. @nicolas_frankel Takeaways ● Reactive all the way down ● Controller to routes ○ Logic in handlers ● Kotlin Beans DSL ● Kotlin Routes DSL
  8. 8. @nicolas_frankel Going further ● Spring Fu ○ Kofu ○ Jafu ● Experimental!
  9. 9. @nicolas_frankel Kofu configuration is currently developed in Spring Fu, an incubator intended to ultimately contribute features related to Kotlin and functional configuration to Spring Framework, Boot and Data. Kofu configuration for Spring Boot
  10. 10. @nicolas_frankel Kofu configuration for Spring Boot ● Explicit configuration via a Kotlin DSL ● Based on Spring Boot infrastructure used in a functional way ● No feature enabled based on classpath detection ● Both declarative and programmatic ● Faster startup and lower memory consumption ● Minimal reflection & annotations usage ● Pure lambdas, no CGLIB proxy
  11. 11. @nicolas_frankel
  12. 12. @nicolas_frankel Thanks! ● ● @nicolas_frankel ●