Hi everyone, I just joined this Slack and wow its ...
# getting-started
l
Hi everyone, I just joined this Slack and wow its a hidden gem. I had a few questions. Most others say you need to learn Java before you try to learn Kotlin, is this true? My other question is, I have never used Kotlin before, just briefly watched some YouTube videos about it. Does anybody have any suggestions for resources for learning the language or would you guys just build projects to learn? Thanks in advance! 🙂
d
You don’t really need to know Java first in order to be able to learn and understand Kotlin IMHO. Having said that, knowing Java can surely boost the time you need to understand Kotlin, since Kotlin is actually kind of an extension of Java. For learning material, you may refer to the following site: https://kotlinlang.org/docs/tutorials/koans.html Happy learning. Cheers
e
Hello & welcome Lqncer! It's not necessary to learn Java before learning Kotlin, but if you know Java, you will learn the object-oriented part of Kotlin really fast. Also, since Kotlin is 100% interoperable with Java, it's very common to use Java libraries and frameworks for backend and Android development, and some of these libs/frameworks only have documentation in Java, so you'll need to know how to adapt the code to the Kotlin version. IntelliJ IDEA can help you with that by converting pasted Java code into Kotlin, but in many cases you still need to tweak the code. If you don't know Java, I recommend you to start with Kotlin-first frameworks/libs (e.g. Ktor for the web) instead of Java frameworks with Kotlin enhancements (e.g. Spring). As for learning, Kotlin's official website (https://kotlinlang.org/docs/tutorials/getting-started.html) has some pretty good tutorials, even interactive ones (Koans) to help you learn the language.
👍 1
l
I'm not 100% unfamiliar with Java I'll say. I understand most of the concepts, but never really put them into projects itself, if that matters? If that helps with learning Kotlin.
e
Knowing the concepts will help a lot already.
l
Good to know! If anyone else has any opinions, please post still!
e
Tip: one thing I struggled a lot when starting was with build tools, since they provide you with all the infrastructure for dependency resolution, compilation, execution and distribution. I recommend that you dedicate some time to learn how to work with Gradle or Maven when you start building projects.
1️⃣ 1
b
Yeah, I think you can start with Kotlin. Some concepts actually remind me more of Ruby or Python than Java. But don't forget that you're running your app in a JVM with it's limitations and specialities (just saying garbage collection, class loading errors, etc). If you encounter such, you'll probably find more Java solutions/answers on Stackoverflow than for Kotlin alone.