Kotlin makes Android development much simpler, it is integrated with android studio. Many companies have started using it in production and there are plenty of job opportunities in mobile development.
Kotlin, originated at JetBrains in 2010, is a general purpose, open source, statically typed “pragmatic” programming language for the JVM and Android that combines object-oriented and functional programming features.
- Kotlin is now an official language on Android.
- It’s expressive, concise, and powerful.
- Best of all, it’s interoperable with existing Android languages and runtime.
- Kotlin code is safer and more concise than Java code, and Kotlin and Java files can coexist in Android apps, so that Kotlin is not only useful for new apps, but also for expanding existing Java apps.
- It contains safety features for nullability and immutability, to make your Android apps healthy and performant by default.
- Also, Kotlin has all of the features and advantages of a functional language.
- Google announced official support for Kotlin on Android at Google I/O 2017, and starting with Android Studio 3.0 Kotlin is built into the Android development toolset.
Advantages of Kotlin
Kotlin is 100% interoperable with Java. You can literally continue work on your old Java projects
using Kotlin. Leverage existing libraries of JVM, android and the browser.
Kotlin isn’t some weird language as its syntax is familiar to any programmer coming from the OOP
Kotlin will infer your types wherever you feel it will improve readability.
The Kotlin compiler tracks your logic and auto-casts types if possible.
Drastically reduce the amount of boilerplate code.
No need to define several similar methods with varying arguments.
Combined with default arguments, named arguments eliminates the need for builders.
Choose any java IDE or build from command line.
A predefined set of operators can be overloaded to improve readability.
Kotlin resolves this by distinguishing between non-null types and nullable types and avoid entire classes of
errors such as null pointer exception.
Learning Resources or Kotlin:-
- IntelliJ IDEA
- Spring 5.0 version( https://repo.spring.io/webapp/#/home )
- Vert.x 3.5 version( http://vertx.io/download/ )
- Ktor is a framework for creating web applications in Kotlinframework( https://bintray.com/search/packages/tag?query=framework )
- Spark framework( https://github.com/perwendel/spark-kotlin )