Kotlin is a programming language created by JetBrains. It keeps running on the Java Virtual Machine (JVM), and can likewise be assembled to JavaScript and Machine Code. Android team announced Kotlin as an official language for Android apps development in Google L/O 2017.

Why Kotlin ?

1.Free and Open Source

Kotlin programming language, including the compiler, libraries and all the tooling is completely free and open source. It is available under Apache 2 license and the complete project is hosted on Github — https://github.com/JetBrains/kotlin

2.Functional and Object Oriented Capabilities

kotlin has functional and object oriented capacities. Kotlin has a rich set of features to support functional programming which includes functional types, lambda expressions, data classes and much more

3.Easy to learn

It is impacted by Java, Scala, Groovy, C#, JavaScript and Gosu. Learning Kotlin is simple on the off chance that you know any of these programming languages. It is particularly easy to learn if you know Java..It has very low curve and every basic syntax look like java

4.Completely interoperable with Java

Kotlin is 100% interoperable with Java. You can without much of a stretch access Java code from Kotlin and the other way around. You can utilize Kotlin and Java in a similar task with no issue.kotlin enables easy adoption of Kotlin into your existing Java projects.

5.Statically Typed

Kotlin is a Statically composed programming language. This implies the every variable and expression known at comiple time.

The favorable position with static composing is that the compiler can approve the strategies calls and property access on the items at gather time itself and avert loads of inconsequential bugs that would somehow or another manifest at runtime.

6.Concise

Kotlin is concise.It was reduces the amount of boilerplate code that you have been writing all the time in other OOP languages.

It gives rich phrases to performing normal errands. For instance, You can make a POJO class with getters, setters, rises to(), hashCode() and toString() strategies in a solitary line .

7.Safe

Kotlin is protected language. It maintains a strategic distance from the most feared and irritating NullPointerExceptions by supporting nullability as a part of a system

Every variable in Kotlin is non-null by default and to allow a variable to hold null value, you need to explicitly declare it as nullable

8.Explicit

Kotlin is Explicit language. Kotlin doesn’t allow implicit type conversions, as a example, int to long, or float to double. It provides methods like toLong() and toDouble() to do so explicitly. If you overriding a parent class function or property, then you want need to explicitly annotate with the override modifier.

9.Build Applications for Android,Server Side, Browser and Desktop

You can develop wide range application for Android,Server Side, Browser and Desktop

  1. Now Android its officially support for kotlin

2. Kotlin can be compiled to JavaScript and Machine code.

3. Kotlin is support for Spring 5 framework.

4.Now you can develop Native Application with kotlin.

10.Excellent Tooling Support

You can use any IntelliJ IDEA, Eclipse, Android Studio. All of them support Kotlin and you can also download Kotlin’s standalone compiler and you can work with the command line compiler


According to my opinion the these projects are possible in future

1.Cross platform game development

2.Server side Microservices

3..Data analysis and machine learning