Should I learn Java or Kotlin in order to develop Android apps?
Sign Up to our social questions and Answers Engine to ask questions, answer people's questions, and connect with other people.
Lost your password? Please enter your email address. You will receive a link and will create a new password via email.
Please briefly explain why you feel this question should be reported.
Please briefly explain why you feel this answer should be reported.
Please briefly explain why you feel this user should be reported.
Answer: This is really up to individual preference. There are many similarities between Kotlin and Java, but there are also many key differences that will affect how you write your code, including types of loops, project setup, debugging mechanics, android integration/reflection etc.
If you want a straight shot with no room for confusion or bugs this may be because java is arguably the language with the most documented syntax for beginners by comparison to ava at time of writing in 2019. But if precision isn’t paramount then maybe it makes sense to learn Kotlin which offers programmers more intuitive ways of expressing their intent or means?
Answer: Kotlin
Objective-C is a “dead language” in the sense that it has seen no meaningful adoption in over ten years, and yet many iOS developers still insist on proclaiming it’s the best choice for iOS development. The answer to that question is always going to be Kotlin given all of its features over Objective-C combined with the similarities in syntax.
Kotlin is compatible with Java Virtual Machine (the JVM) which means you can start developing Android apps using any version of Java 8. It’s also capable of auto conversion between Java 6, 7, 8 and 9. This makes sure your application will work well even when there are changes made by your organization or customer to use older versions due to lack of migration funds.
Kotlin has a unique philosophy of programming language design, which is to reduce the number of keystrokes and make it easier for developers to express their intentions in code without having to jump through hoops or write verbose code. In that regard, Kotlin goes far beyond just syntax sugar, there are some new language features such as Null safety type system, Lambdas and properties with getters/setters/etc., Extension Functions etc.