


Here’s why I believe stands out from the rest in regard to that list: I previously enumerated a list of some of the negative aspects of third-party Parcelable code generation libraries compared to manual implementation. And since version 1.3.60, the Android Studio plugin also properly recognizes the feature as non-experimental so it can finally be considered as production-ready. Things have changed for the better since I wrote the previous article: with the release of Kotlin 1.3.40, is now a stable feature provided by the Parcelize Gradle plugin (formerly known as Kotlin Android Extensions). That’s why I tend to be conservative about the dependencies I add to my projects and will always favor official libraries from Jetbrains or Google over third-party solutions. But I expect the tools I use to meet my quality standards.

Does it mean that I always prefer writing this code manually rather than letting a library or tool generate it for me? Of course not: like most developers, I believe that the best code is the code you don’t have to write. Two years ago, I wrote about how you can leverage features of the Kotlin programming language to manually write your Android Parcelable implementations in the most concise and readable way.
