I am fairly new to Kotlin; could you please recommend a good recent book to get to grips with Kotlin? Or should I go for a book on Android Studio as it covers aspects of Kotlin too?
I am also undertaking some training online, but a book would supplement and give more in depth exposure. Many thanks!
Thank you very much; I did see some of these books, but they have slightly different approaches, hence my request for recommendations.
Thank you for your help, I’ll have another look.
It probably depends upon your previous experience.
For me, the best book by far is Kotlin In Action; it’s written by members of the Kotlin development team, and they not only know their stuff intimately but also explain it extremely clearly and lucidly.⠀It doesn’t just cover the syntax of the language (like too many other books); it gives you a deep understanding of what the various constructs are for, when and why you would use them, and how they all fit together.
However, it goes fast and deep; it’s intended for people who already have some knowledge of programming, especially object-oriented programming in Java, and want to learn every aspect of Kotlin in detail.⠀(The book is in two parts, so if you just want the basics, you can stop after the first.)
This means that if you’re new to programming, you’d probably find it hard going, and would benefit from something slower that teaches the fundamentals.⠀Also, it doesn’t cover any specific platforms, frameworks, or APIs; it doesn’t teach the Android APIs, for example (though of course the core language can be used to write Android programs just as well as web apps, desktop apps, and many other things).
In my case, having used Java professionally for many years and also having learned a little Scala, I was already familiar with many of the ideas, and so powered through it.⠀In fact, I read it cover-to-cover three times, and picked up a pretty deep understanding of the language.⠀It’s one of the best programming books I’ve read!
I’m afraid I got much less out of The Joy Of Kotlin.⠀ For one thing, it seems to be mis-titled; it should have been called Functional Programming In Kotlin, as the aim seemed to be that of covering all the classic functional programming ideas and techniques, and how you’d implement them in Kotlin — even where they’re not particularly suited to Kotlin and/or where the Kotlin language or standard library provide better approaches.
If you want to learn the traditional FP ideas and techniques, illustrated using a modern language, then this may well be a good book.⠀But if you want to learn the Kotlin language, its mindset, the best ways of using it, and how to choose between or combine functional, imperative, and OO approaches, then this isn’t the right book; it’s only about FP, and doesn’t give fair discussion of the alternatives.
@gidds Thank you for taking the time to write this helpful and informative reply, much appreciated. I will give a go to Kotlin in Action