Workspace

Kotlin

Android apps backend services and concise JVM development

Definition first

What Kotlin means

Kotlin is a programming language for writing exact instructions, often used for Android apps backend services and concise JVM development. Start with one mental model: input goes through steps and becomes output.

Minimum run factsFile Main.ktRun kotlinc Main.kt -include-runtime -d app.jar && java -jar app.jarHabit Lean on null safety and small functions before class design
Program

An ordered set of instructions. It reads input, follows rules, and produces output.

Value and variable

A value is data. A variable is the name you use to hold and reuse that data.

Function

A named piece of work. It takes input, does one job, and can return a result.

Runtime

Kotlin compiler is the place that actually runs code from Main.kt.

First readable code

Program output

entry point output syntax println
println(42)
Output 42

Language lineage

Kotlin family tree

See where Kotlin comes from, which languages feel close, and what to learn next.

roots
JavaScalaGroovy
currentKotlinModern JVM family
familyModern JVM family
best used for

Android apps, JVM backends, and concise typed product code

Zero base path

1Read one rule2Predict output3Type from memory4Run checklist5Repeat with one change

Question bank

Search before practice

Pick a stage or search across the open programming bank. Jump straight to the matching drill.

18 matching questions
Q 1ChoiceStage 1 definitions

Kotlin practice 1

Kotlin question 1. Choose the statement that matches printing a value.

Q 2ChoiceStage 1 definitions

Kotlin practice 2

Kotlin question 2. Choose the statement that matches naming a value.

Q 3ChoiceStage 1 definitions

Kotlin practice 3

Kotlin question 3. Choose the statement that matches reusable function.

Q 4ChoiceStage 1 definitions

Kotlin practice 4

Kotlin question 4. Choose the statement that matches basic collection.

Q 5ChoiceStage 1 definitions

Kotlin practice 5

Kotlin question 5. Choose the statement that matches printing a value.

Q 6ChoiceStage 1 definitions

Kotlin practice 6

Kotlin question 6. Choose the statement that matches naming a value.

Q 7ChoiceStage 1 definitions

Kotlin practice 7

Kotlin question 7. Choose the statement that matches reusable function.

Q 8ChoiceStage 1 definitions

Kotlin practice 8

Kotlin question 8. Choose the statement that matches basic collection.

Q 9ChoiceStage 1 definitions

Kotlin practice 9

Kotlin question 9. Choose the statement that matches printing a value.

Q 10ChoiceStage 1 definitions

Kotlin practice 10

Kotlin question 10. Choose the statement that matches naming a value.

Q 11ChoiceStage 1 definitions

Kotlin practice 11

Kotlin question 11. Choose the statement that matches reusable function.

Q 12ChoiceStage 1 definitions

Kotlin practice 12

Kotlin question 12. Choose the statement that matches basic collection.

Q 13ChoiceStage 1 definitions

Kotlin practice 13

Kotlin question 13. Choose the statement that matches printing a value.

Q 14ChoiceStage 1 definitions

Kotlin practice 14

Kotlin question 14. Choose the statement that matches naming a value.

Q 15ChoiceStage 1 definitions

Kotlin practice 15

Kotlin question 15. Choose the statement that matches reusable function.

Q 16ChoiceStage 1 definitions

Kotlin practice 16

Kotlin question 16. Choose the statement that matches basic collection.

Q 17ChoiceStage 1 definitions

Kotlin practice 17

Kotlin question 17. Choose the statement that matches printing a value.

Q 18ChoiceStage 1 definitions

Kotlin practice 18

Kotlin question 18. Choose the statement that matches naming a value.

Multiple choice

Kotlin practice 1

Q 1Choicenew

Kotlin question 1. Choose the statement that matches printing a value.

println(42)

Reference

Patterns for Main.kt

Kotlin compilerkotlinc Main.kt -include-runtime -d app.jar && java -jar app.jar
Recall from memoryRead a small point then write it back without looking
Trace the codeWrite variable values line by line before you run the answer
Type it yourselfCopy less type more and fix one small error at a time

entry point output syntax println

Program output

println(42)
  • Run the smallest file first
  • Print one known value
  • Check the output before adding more code

variables assignment types val

Values and names

val total = 42
println(total)
  • Give values readable names
  • Keep one idea per line while learning
  • Trace the value before changing it

function collection List

Functions and collections

fun add(a: Int, b: Int): Int {
  return a + b
}

val scores = listOf(40, 2)
println(scores.size)
  • Keep functions small
  • Return useful values
  • Use the common collection before reaching for frameworks