kotlin-telegram

Repository with information about Kotlin chats on Telegram.

View the Project on GitHub Heapy/kotlin-telegram

Kotlin FAQ

FAQ for Telegram chat @kotlin_start.

1. I want to learn Kotlin. Where should I start?

1a. Documentation.

If you are just starting, you should check official docs. The reference is well-written and answers most of beginner questions. Often there are editable code samples which you can run from within the webpage.

Brief language syntax overview and useful idioms.

Java libraries usage.

Short language review by Google.

1b. Books.

You can find comprehensive list of books right at the site.

Should I read the book? Most probably not. Docs should be enough to kick-off.

But I really want a book. Which one should I pick? If you have an experience with Java Kotlin in Action is one of the best books out there.

What if I don’t have programming experience? Atomic Kotlin should soon become available. Preview of the book is available as a Stepik course. Part of the material is free.

What about Android? Android Development with Kotlin or Kotlin for Android Developers.

1c. MOOC.

Kotlin:

Android:

1d. Excercises.

(You should also check “MOOC”)

You can install Kotlin Educational Plugin and learn the language interactively.

Short interactive examples with descriptions can also be found at “Kotlin by Example” page.

Tasks called Kotlin Koans are also available online. This is the great way to get your feet wet with Kotlin.

play.kotl.in, Scratch files in IDE and REPL in terminal are a great tools to experiment with small fragments of code.

2. Can I learn Kotlin without Java knowledge? Is Kotlin a good first programming language?

Yes. Kotlin is quite a good language to become a first one. Knowledge of JVM/Java is not mandatory from the beginning, but would be useful in future if you continue your path with Kotlin on JVM platform.

For example, if you are going to create Android apps, be ready to read Java from time to time and use Java libraries on the daily basis. You should invest at least some time to become acquainted with Java and JVM as soon as you learn Kotlin foundation.

Remember that despite you are going to work with Kotlin standard library, it uses Java classes under the hood on JVM-based platforms (Android, JavaFX, backend). For example, Kotlin collections are backed by specific Java implementations.

Knowledge and understanding is important overall, but is not mandatory while you learn.

3. Does Kotlin code has specific style guides?

Yes. Coding conventions are available at kotlinlang.org. There is also Android style guide at developer.android.com.

4. I still have questions

Do you know how to solve your problem in Java? Use Java to Kotlin converter in IDEA and make the result more idiomatic manually.

Do you want to share your code with others? Try to trim it down to minimal reproducible example showing your main issue and post it via play.kotlinlang.org.

Make sure you’ve skimmed through the corresponding documentation section.

Still got questions? Ask:

Examples of bad questions for Kotlin chat: