Введение: Почему 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("Введите второе число: ")