Best Sellers Rank: #688,088 in Books (See Top 100 in Books) #37 in Functional Software Programming #172 in Mobile App Development & Programming #474 in Software Development (Books)
Customer Reviews: 4.6 out of 5 stars 16Reviews
Product Information
From the Publisher
There are lots of books on Kotlin, and on Design Patterns too, what makes this book unique?
As I was planning this book, I had the following idea in mind: instead of just teaching a new language to the readers, I wanted to teach them Kotlin through Design Patterns, and Design Patterns through Kotlin. I believe I succeeded in my goal, although the readers will be the best judges.
While there are many learning resources for Kotlin and design patterns in the abstract, there are no other books that teach you how to apply the classic Creational, Behavioral, and Structural design patterns to Kotlin. This book offers a comprehensive guide to smarter coding in Kotlin.
What’s new in this edition, and why should readers of the previous edition consider upgrading?
This edition reflects the rapid evolution of both the industry and Kotlin programming language. Two of the most exciting topics this book now covers are Structured Concurrency, which helps write concurrent programs without risking resource leaks, and Context Receivers, which can be viewed as an evolution of Extension Functions and allows writing more concise and expressive code. In addition, a new chapter in this book is dedicated to the Arrow library, a functional programming library that has gained popularity in the Kotlin community over the past few years.
While only one chapter is completely brand-new, many of the other chapters have been extensively modernized and extended to add new coverage throughout the book. Readers of the previous edition will find, among other things, new content on stable deep recursive functions, windowed, chunked, and zipWithNext functions on collections, new Gradle DSL, and JVM records in Kotlin.
Finally, how will this book help readers in their careers?
The book can help readers in multiple ways. If they’re at the beginning of their career, it should be a good introduction to the benefits of the Kotlin programming language and a pragmatic, not too academic, introduction to the concept of Design Patterns. On the other hand, if they are experienced developers, they will be able to learn how and when the patterns they already know could be applied in Kotlin, what patterns are already built into the language or the standard library, and how to implement those that are not built-in.