🎯 Kotlin

Primeiro programa: Hello World e fundamentos de sintaxe em Kotlin

Что это и зачем?

Представь, что ты учишься играть в новую видеоигру. Первое, что ты делаешь — нажимаешь кнопку "Новая игра" и видишь заставку. В программировании такой "заставкой" считается программа, которая выводит на экран текст "Hello, World!" (Привет, мир!).

Зачем это нужно? Представь, что ты купил новый конструктор Lego. Ты не собираешь сразу огромный замок — сначала проверяешь, все ли детали на месте, соединяешь пару кубиков. Так и в программировании: "Hello, World!" — это проверка, что твой компьютер правильно понимает язык Kotlin и может выполнять простейшие команды.

Kotlin — это язык программирования, который используют для создания приложений на телефонах Android, веб-сайтов и даже игр. Он похож на английский язык, но с очень строгими правилами — как в математике. Если в обычном разговоре можно сказать "я вчера купил хлеб" или "хлеб я купил вчера", то в программировании порядок слов имеет значение.

Когда ты напишешь свою первую программу, ты поймёшь главное: компьютер — это очень умный, но очень буквальный друг. Он делает только то, что ты ему скажешь, и именно так, как ты скажешь. Если ты напишешь "напечатай привет", а не "напечатай Привет", компьютер может не понять тебя.

Синтаксис и примеры кода

Синтаксис — это правила написания кода. Как в русском языке есть правила: "жи-ши пиши с буквой и", так и в Kotlin есть свои правила. Давай посмотрим на них на примерах.

Пример 1: Классический Hello World

fun main() {
    println("Hello, World!")
}

Разберём каждую строчку:

  • fun main() — это как кнопка "Старт" в игре. Слово fun означает "функция" (действие), а main — "главная". Когда программа запускается, она ищет эту строчку и начинает выполнять всё, что внутри фигурных скобок {}.
  • println — это команда "напечатай строку и перейди на новую строку". Буквально: print (печатай) + ln (line — новая линия).
  • ("Hello, World!") — текст, который нужно напечатать. Он обязательно должен быть в кавычках, чтобы компьютер понял: это текст, а не команда.
  • { } — фигурные скобки показывают, где начинается и заканчивается программа. Как стены дома: всё, что внутри — это программа.

Пример 2: Приветствие с именем

fun main() {
    val имя = "Аня"
    println("Привет, " + имя + "!")
}

Здесь мы познакомились с переменной. Переменная — это коробка, в которую можно положить значение. Представь, что у тебя есть коробка с надписью "имя", и ты кладёшь туда бумажку "Аня".

  • val — сокращение от "value" (значение). Это слово говорит: "я создаю коробку, и её содержимое нельзя поменять". Если ты написал val имя = "Аня", то потом не сможешь написать имя = "Петя" — компьютер выдаст ошибку.
  • + — знак сложения. Для текста он работает как склеивание: "Привет, " + "Аня" + "!" превращается в "Привет, Аня!".

Пример 3: Математика в Kotlin

fun main() {
    val число1 = 10
    val число2 = 5
    val сумма = число1 + число2
    println("Сумма: " + сумма)
}

Компьютер умеет считать! Здесь мы создали три переменные: число1 (значение 10), число2 (значение 5) и сумма (результат сложения). Когда программа дойдёт до строчки val сумма = число1 + число2, компьютер сначала посчитает 10 + 5 = 15, а потом положит результат в коробку "сумма".

Важно: числа пишутся без кавычек! Если написать val число1 = "10", то это будет текст, а не число. С текстом нельзя складывать как с числами — "10" + "5" даст "105", а не 15.

Пример 4: Ввод данных от пользователя

fun main() {
    println("Как тебя зовут?")
    val имя = readLine()
    println("Приятно познакомиться, " + имя + "!")
}

Здесь программа спрашивает имя у пользователя. readLine() — это команда "прочитай строку с клавиатуры". Когда программа доходит до этой строчки, она останавливается и ждёт, пока ты что-то введёшь и нажмёшь Enter. Введённый текст сохраняется в переменную имя.

Обрати внимание: readLine() всегда возвращает текст (строку), даже если ты введёшь число. Если нужно число, придётся использовать специальную команду readLine()!!.toInt(), но это уже для следующего урока.

Пример 5: Комментарии в коде

fun main() {
    // Это комментарий. Компьютер его игнорирует.
    println("Привет!") // А это комментарий после команды.
    /* А это многострочный комментарий.
       Его можно растянуть на несколько строк.
       Компьютер пропустит всё, что между /* и */ */
}

Комментарии — это заметки для себя и других программистов. Компьютер их не выполняет, они нужны, чтобы объяснить, что делает код. Представь, что ты пишешь рецепт и оставляешь пометки: "добавить соль по вкусу". Комментарии в коде — то же самое.

  • // — однострочный комментарий. Всё после // до конца строки игнорируется.
  • /* */ — многострочный комментарий. Можно закомментировать целый абзац.

Сравнение с Python

Python — ещё один популярный язык программирования, который часто учат первым. Давай посмотрим, как те же программы выглядят на Python.

Действие Kotlin Python
Вывести текст println("Привет") print("Привет")
Создать переменную val имя = "Аня" имя = "Аня"
Сложить числа val сумма = 10 + 5 сумма = 10 + 5
Ввести данные val имя = readLine() имя = input()
Главная функция fun main() { ... } Не нужна (код пишется сразу)

Главные отличия:

  • Фигурные скобки: в Kotlin нужно обязательно ставить { } вокруг кода программы. В Python вместо них используются отступы (пробелы или табуляция). Если в Python ты забудешь отступ, программа не запустится.
  • Типы переменных: в Kotlin ты можешь написать val или var (изменяемая переменная). В Python переменные создаются простым присваиванием: имя = значение.
  • Строгие правила: Kotlin требует точку с запятой? Нет, но он требует правильного написания команд. Python более "свободный", но из-за этого легче допустить ошибку.
  • Скорость: Kotlin работает быстрее, потому что он компилируется (переводится в машинный код) заранее. Python интерпретируется (переводится на лету), поэтому медленнее.

Какой язык выбрать? Если хочешь делать приложения для Android — учи Kotlin. Если хочешь быстро писать скрипты или заниматься наукой о данных — Python. Но для начала можно попробовать оба!

Типичные ошибки новичков

Даже опытные программисты иногда ошибаются. Вот список самых частых ошибок, которые делают новички в Kotlin:

Ошибка 1: Забыл фигурные скобки

// Неправильно:
fun main()
    println("Привет")

// Правильно:
fun main() {
    println("Привет")
}

Фигурные скобки — как дверь в комнату. Если забыть их, компьютер не поймёт, где начинается и заканчивается программа.

Ошибка 2: Не поставил кавычки у текста

// Неправильно:
println(Привет)

// Правильно:
println("Привет")

Без кавычек компьютер думает, что "Привет" — это команда или переменная. Он ищет её, не находит и выдаёт ошибку.

Ошибка 3: Перепутал val и var

// Неправильно:
val имя = "Аня"
имя = "Петя" // Ошибка! val нельзя менять.

// Правильно:
var имя = "Аня"
имя = "Петя" // Теперь можно.

Запомни: val — это константа (неизменяемое), var — переменная (изменяемое). Если ты знаешь, что значение не поменяется, используй val — это безопаснее.

Ошибка 4: Забыл скобки у readLine()

// Неправильно:
val имя = readLine

// Правильно:
val имя = readLine()

Скобки () показывают, что это команда (функция), а не переменная. Без скобок компьютер думает, что