It is focused on interoperability, safety, clarity, and tooling support. Kotlin originated at JetBrains, the company behind IntelliJ IDEA, in 2010, and has been open source since 2012.
Why use Kotlin for Android Development?
Kotlin is a great fit for developing Android applications, bringing all of the advantages of a modern language to the Android platform without introducing any new restrictions:
- Compatibility: Kotlin is fully compatible with JDK 6, ensuring that Kotlin applications can run on older Android devices with no issues. The Kotlin tooling is fully supported in Android Studio and compatible with the Android build system.
- Performance: A Kotlin application runs as fast as an equivalent Java one, thanks to very similar bytecode structure. With Kotlin’s support for inline functions, code using lambdas often runs even faster than the same code written in Java.
- Interoperability: Kotlin is 100% interoperable with Java, allowing using all existing Android libraries in a Kotlin application. This includes annotation processing, so data binding and Dagger work too.
- Footprint: Kotlin has a very compact runtime library, which can be further reduced through the use of ProGuard. In a real application, the Kotlin runtime adds only a few hundred methods and less than 100K to the size of the .apk file.
- Compilation Time: Kotlin supports efficient incremental compilation, so while there’s some additional overhead for clean builds, incremental builds are usually as fast or faster than with Java.
- Learning Curve: For a Java developer, getting started with Kotlin is very easy. The automated Java to Kotlin converter included in the Kotlin plugin helps with the first steps.
For more detailed reasons you can refer :-
Resources to Learn Kotlin
Kotlin is an open source language with its own documentation and community, so we don’t provide documentation about the actual language here. If you’re new to Kotlin, we recommend you check out the following resources.
Documentations and Samples
- Get Started with Kotlin on Android: A short guide to start using Kotlin in Android Studio.
- Kotlin samples: A collection of Android sample apps built with Kotlin.
- Kotlinlang.org: The official Kotlin website. Includes everything from a guide to basic syntax to the Kotlin standard library reference.
- Kotlin Koans Online: A collection of exercises in an online IDE to help you learn the Kotlin syntax.
- https://github.com/KotlinBy/awesome-kotlin : GitHub repository for Kotlin.
- Udacity course : “Kotlin Bootcamp for Programmers”. Essentials of the Kotlin programming language from Kotlin experts at Google. For programmers coming from Java or other object- oriented languages.
- O’Reilly course: An 8-hour Kotlin course, “Introduction to Kotlin Programming,” by Hadi Hariri, a developer at JetBrains. Requires subscription; 10-day free trial available.
- Treehouse course: “Kotlin for Java Developers” teaches Kotlin with an emphasis on Android. Requires subscription; 7-day free trial available.
- Udemy course: “Kotlin for Beginners” teaches Kotlin from scratch. Requires subscription; new student discount available.
- Android Development with Kotlin - Jake Wharton
- You can do better with Kotlin
- Introduction to Kotlin (Google I/O ’17)
- Life is Great and Everything Will Be Ok, Kotlin is Here (Google I/O ’17)
- Kotlin in Action: By Dmitry Jemerov and Svetlana Isakova, Kotlin developers at JetBrains.
- Kotlin for Android Developers: By Antonio Leiva. One of the first books about Kotlin.
- Android Development with Kotlin: By Marcin Moskala and Igor Wojda.
More books are listed on the Kotlin site.
- @kotlin: The official Kotlin Twitter account.
- Kotlin Community: A list of offline events and groups from kotlinlang.org.
- Kotlin Slack: A Slack chat community for Kotlin users.
- Talking Kotlin: A bi-monthly podcast on Kotlin and more.