Java to Kotlin: A Refactoring Guidebook
T**N
Valuable
Kotlin is a really nice language but is not so common that you have the opportunity to start writing software from scratch, not professionally anyway. This book describes in a really good way how you transform your existing Java code base to Kotlin, step by step, concept by concept. It is pedagogical, mixing the rational behind what you want to accomplish (immutability for instance) and then it shows how to transform the Java example to Kotlin.Highly recommended.
J**Y
Effective Java for Kotlin
This book is not for those new to Kotlin but it is probably the best book for learning how to write Koltin. Much of what was best practice in Java no longer applies in Kotlin because it doesn't have the heavy handed OOP restrictions on it that Java has and is more of a hybrid language allowing OOP, FP, and DOP to all merge.
A**N
not useful
Not for those that want to learn Kotlin's basics.
G**E
Do not fight the grain of the language!
As the authors describe in the book, every language has its own grain and so does Kotlin. Kotlin although promoted as a better Java is so much more. It has its own grain, its own idioms.This is a book for all levels of developers that would like to try Kotlin and especially for people coming from Java.Make no mistake though! This book has, also, its own grain and its not simply a java to kotlin book. You will delve into TDD, functional programming and a plethora of refactoring techniques that you will be able to use day in day out.Do not falter and buy this book as fast as possible!
P**I
Beyond expectations
When buying the book, I thought: "I'm already past that point where I need to be guided how to go from Java to Kotlin". I was sure that it was about just migrating to Kotlin, forget Java, it's crap and let's be fanboys of Kotlin. However, after first pages I actually learned about the history of Java and where the differences between Java and Kotlin come from. I've been just 6 years in the industry, and started with Java 8, so such retrospective was very valuable. The great term introduced in the book - language's grain - is the answer to most differences and was one of the "aha!" moments for me. This book is a great read for Java developers that even doesn't really want to go into Kotlin (yet), so that they see that Kotlin offers what Java has been trying to be for several years now. It articulates the strengths and reasons first, then you go on a sort-of-pair-programming session with the authors (well, unidirectional, but always), and in a very informal way, play with the code and refactor it in different ways. The authors share the reasons of each refactoring steps and explain the trade-offs. All of this is with keeping compatibility with existing Java code base in mind, because the authors realize that it's nearly impossible to do a big-bang refactoring to Kotlin.Note: this is not a book which I would recommend as a first read about Kotlin. As the authors state themselves, they didn't mean to teach the language, but rather build on top of the basic knowledge that someone should gather somewhere else. Once you have a nice grasp of the syntax and basics, you are good to go with this book.
A**L
A great learning approach, insightful advice to adapting to Kotlin
As a Java developer who now using Kotlin as my core JVM language, I found my self constantly thinking the Java way and my verbose bloated Kotlin reflected this.Following along with Nat and Duncan has been great, they have used a learning model based on the gradual refactoring and conversion of the test project using a bite size incremental git commit history, which has been great to review after every few paragraphs to internalise the point being illustrated.The mutability pit falls of Java and the immutability opportunity in Kotlin is frequently presented in the book.Highly recommended
A**R
Good
I am half way through, but I have to agree with other reviewer — book is useful but unnecessary opinionated. Assuming book target audience are experienced software engineers, it doesn’t read as such, due to ill-balanced and one sided examples, and the tone.This is particularly striking, as certain topics are actually omitted, if not fit authors point of view, whereas others are too verbose, even when irrelevant.Rating 4/5 as it covers relatively large number of topics.
R**T
Useful, but condescending
Definitely good for quickly learning the syntax and some useful Kotlin tips.But if you're a Java developer (which of course you are if you are reading this), be prepared to be told every bit of code you've ever written is wrong, and that the way they do things is right (even though they try to say they have their own differences of opinion).The funny thing is that a lot of the example code they use for the "Java" way of doing things is never how I'd have written code in the first place.
Trustpilot
2 weeks ago
1 month ago