In this chapter, we've delved deeper into why Kotlin is designed to work so closely and seamlessly with existing Java code and tools. From the beginning, JetBrains has strived to make Kotlin work side by side with Java to make adoption easier for outside developers, and so they could use Kotlin with their own existing tools. Because Kotlin compiles to compatible bytecode, it's possible to provide a developer experience that is concise, powerful, and flexible for Kotlin developers while also fully compatible for Java developers. This allows Kotlin to be adopted and integrated incrementally, which has helped to lead to its increased popularity.
We've seen how easy it is to add Kotlin to an existing Java project and how quickly we can convert existing Java code into Kotlin code. Again, both of these features mean you can migrate to Kotlin slowly without major...