Technology Focus: Kotlin
Our latest technology focus is on Kotlin. We caught with Realm Developer, Adrian de Vries to find out more about this programming language.
What exactly is Kotlin?
What are some of the key features of Kotlin?
- It is easier to learn compared to Java, and interoperable with Java. The interoperability with Java, allows for low risk of adoption.
- There is support from several Integrated Development Environments (IDE’s), including IntelliJ IDEA, Android Studio 3, and Eclipse.
- The language is open-source, allowing input from a broader audience.
What does it work best for?
Kotlin’s key focus is Android mobile application development, but can be used to develop anything. It is currently used by Trello, Pinterest, Netflix, and Uber, just to name a few.
Tell us about some of the key technical features of Kotlin that appeals to you?
Kotlin allows for “data” classes, which essentially reduces the complexity and quantity of code with automatic method generation. It also prevents the compilation of code that assigns or returns null, which improves code safety and reliability.
Developers are also able to easily introduce new features by using the simplicity of extending functions and methods on a class by class basis. This keeps your code lightweight and simplified.
Kotlin has SmartCast functionality which reduces redundant variable casting, further improving the reduction of the lines of code written.
It also allows for the passing of parameters, either by option or by name, into methods and caters for default value declarations.
What are the things you should keep in mind?
Kotlin currently targets Java 6 bytecode, and therefore it is limited to those features. The community is still in its growth phase, even though development started in 2011.
- Officially recommended by Google for Android App development
- It is a statically typed programming language, which runs on the Java Virtual Machine.
- Great IDE Support
- Low risk to adopt