На этом шаге мы рассмотрим общие вопросы, связанные с программированием для JVM.
JVM - это программа, которая знает, как выполнить набор инструкций, называемых байт-кодом.
"Программирование для JVM" означает, что ваш исходный код на Kotlin будет компилироваться, или транслироваться, в байт-код Java и выполняться под управлением JVM (рисунок 1).
Рис.1. Поток компиляции и исполнения
Каждая платформа, например Windows или macOS, имеет свой набор инструкций. Виртуальная машина JVM - это мост между байт-кодом и различными программными и аппаратными средствами, она читает байт-код и выполняет соответствующие ему машинные инструкции. Это позволяет разработчикам на языке Kotlin только один раз написать платформо-независимый код, который после компиляции в байт-код будет выполняться на множестве устройств вне зависимости от операционной системы.
Так как Kotlin может транслироваться в байт-код для JVM, он считается языком JVM. Java - самый известный JVM-язык, потому что он был первым. Впоследствии появились другие JVM-языки, такие как Scala и Kotlin, которые, по мнению их авторов, должны были устранить существующие недостатки Java.
Kotlin не ограничивается поддержкой JVM. Код на Kotlin также можно было транслировать в код на JavaScript или даже в двоичные выполняемые файлы, которые можно запускать на выбранной платформе - Windows, Linux или macOS - без установки виртуальной машины.
Со следующего шага мы начнем рассматривать переменные, константы и типы.