Reader small image

You're reading from  Kotlin Design Patterns and Best Practices - Third Edition

Product typeBook
Published inApr 2024
PublisherPackt
ISBN-139781805127765
Edition3rd Edition
Right arrow
Author (1)
Alexey Soshin
Alexey Soshin
author image
Alexey Soshin

Alexey Soshin is a software architect with 18 years of experience in the industry. He started exploring Kotlin when Kotlin was still in beta, and since then has been a big enthusiast of the language. He's a conference speaker, published writer, and the author of a video course titled Pragmatic System Design
Read more about Alexey Soshin

Right arrow

Summary

By now, you should have a more comprehensive grasp of functional programming, its advantages, and how Kotlin tackles this paradigm. We’ve explored the ideas of immutability and pure functions, and how their integration leads to code that’s both easier to test and maintain. Of course, nothing comes without some trade-offs. One significant drawback is that it can lead to performance issues in some scenarios due to the creation of numerous intermediate objects and the potential for increased memory usage.

Additionally, the paradigm shift from imperative programming requires a learning curve and can be challenging to integrate with imperative codebases.

We covered how Kotlin supports closures, allowing a function to access variables from its surrounding function and thus preserve state between multiple runs. This facilitates techniques like currying and memoization, which enable us to set default function arguments and cache previously computed function...

lock icon
The rest of the page is locked
Previous PageNext Page
You have been reading a chapter from
Kotlin Design Patterns and Best Practices - Third Edition
Published in: Apr 2024Publisher: PacktISBN-13: 9781805127765

Author (1)

author image
Alexey Soshin

Alexey Soshin is a software architect with 18 years of experience in the industry. He started exploring Kotlin when Kotlin was still in beta, and since then has been a big enthusiast of the language. He's a conference speaker, published writer, and the author of a video course titled Pragmatic System Design
Read more about Alexey Soshin