Kotlin с нуля в 2025: практическое руководство для начинающих

Онлайн-тренажер Python для начинающих

Изучайте Python легко и без перегрузки теорией. Решайте практические задачи с автоматической проверкой, получайте подсказки на русском языке и пишите код прямо в браузере — без необходимости что-либо устанавливать.

Начать курс

Введение: Почему Kotlin — ваш лучший выбор в 2025 году

Kotlin — это современный, лаконичный и безопасный язык программирования, который за последние годы стал стандартом для разработки под Android и активно используется в бэкенде, вебе и даже Data Science. В 2025 году Kotlin не просто жив, а процветает: Google официально рекомендует его для Android, JetBrains продолжает развивать экосистему, а сообщество растёт с каждым днём.

Если вы новичок и хотите начать программировать, Kotlin — идеальный выбор. Он сочетает простоту Python с мощью Java, но при этом избавляет от устаревшего синтаксиса. В этой статье мы разберём, с чего начать изучение Kotlin в 2025 году, установим среду разработки, напишем первые программы и затронем ключевые концепции. Никакой скучной теории — только практика.

1. Установка и настройка окружения

Прежде чем писать код, нужно подготовить рабочее место. В 2025 году это делается за 10 минут.

Шаг 1: Установка JDK (Java Development Kit)

Kotlin работает на виртуальной машине Java (JVM), поэтому первым делом установите JDK версии 17 или 21 (LTS). Скачайте его с Adoptium или используйте OpenJDK. Установите и проверьте:

java -version
# Вывод: openjdk version "21.0.1" 2025-01-18

Шаг 2: Установка IntelliJ IDEA Community Edition

Лучшая IDE для Kotlin — IntelliJ IDEA от JetBrains. Community-версия бесплатна и включает всё необходимое. Скачайте её с официального сайта.

Шаг 3: Создание первого проекта

Откройте IntelliJ, нажмите New Project, выберите Kotlin → Console Application. Назовите проект HelloKotlin и нажмите Finish. Готово! Ваш первый проект создан.

2. Синтаксис Kotlin: первые шаги

Kotlin известен своим чистым и выразительным синтаксисом. Давайте напишем классическую программу Hello, World! и разберём её по частям.

Пример 1: Hello, World!

fun main() {
    println("Hello, Kotlin 2025!")
}

Что здесь происходит:

  • fun — ключевое слово для объявления функции.
  • main() — точка входа в программу. Без неё код не запустится.
  • println() — функция вывода строки в консоль.
  • Точка с запятой ; не обязательна — Kotlin умный.

Запустите код (кнопка ▶️ слева от fun main). В консоли увидите приветствие.

Пример 2: Переменные и типы данных

Kotlin поддерживает два типа переменных:

  • val — неизменяемая (immutable), как константа.
  • var — изменяемая (mutable).
fun main() {
    val name = "Алексей"  // неизменяемая
    var age = 25          // изменяемая
    println("Меня зовут $name, мне $age лет")
    
    age = 26  // работает, так как var
    // name = "Петр"  // Ошибка! val нельзя изменить
}

Обратите внимание на строковые шаблоны: $name и $age — это вставка переменных прямо в строку. Очень удобно.

Пример 3: Условные операторы

fun main() {
    val score = 85
    val grade = if (score >= 90) {
        "Отлично"
    } else if (score >= 75) {
        "Хорошо"
    } else {
        "Нужно подтянуть"
    }
    println("Ваша оценка: $grade")
}

В Kotlin if — это выражение, а не оператор. Он возвращает значение, поэтому можно присваивать результат переменной.

3. Функции и null-безопасность — киты Kotlin

Две главные фишки Kotlin, которые делают код безопаснее и короче.

Функции: объявление и параметры

fun greet(name: String, age: Int): String {
    return "Привет, $name! Тебе $age лет."
}

fun main() {
    val message = greet("Мария", 30)
    println(message)
}

Параметры пишутся в формате имя: Тип. Возвращаемый тип указывается после двоеточия : String. Если функция ничего не возвращает, пишите : Unit (или опустите).

Null-безопасность: избавляемся от ошибок

В Java NullPointerException — главная головная боль. В Kotlin типы по умолчанию не могут быть null. Если переменная может быть null, используйте ?:

fun main() {
    val name: String? = null  // может быть null
    println(name?.length)      // безопасный вызов: если null, вернёт null
    println(name?.length ?: 0) // элвис-оператор: если null, то 0
}
  • ? — делает тип nullable.
  • ?. — безопасный вызов (safe call).
  • ?: — элвис-оператор (elvis operator), задаёт значение по умолчанию.

Это одна из причин, почему Kotlin так любят: вы пишете меньше проверок на null, а код становится надёжнее.

4. Практический проект: простой калькулятор

Закрепим знания. Напишем консольный калькулятор, который складывает, вычитает, умножает и делит два числа.

fun main() {
    println("=== Простой калькулятор на Kotlin ===")
    print("Введите первое число: ")
    val a = readln().toDoubleOrNull()
    print("Введите второе число: ")                

Блоги

Рекомендаций по книгам