Вопрос:

Требуется ли JDK для Kotlin?

java android kotlin

4424 просмотра

4 ответа

113 Репутация автора

Я долгое время не пользовался Android, но теперь я нахожу новый термин, Kotlin, поэтому я сомневаюсь, что для Kotlin требуется JDK?

Если Kotlin заменит Java, значит, JDK не нужен, потому что, по моему мнению, JDK предназначен для разработки на Java, правильно?

Если это правильно, то у меня есть другие сомнения (это уже старое), почему JDK используется для Android, если это уже включает Android SDK?

П.Д. Я схожу с ума, мне нужно одно объяснение.

Автор: kcire_eae Источник Размещён: 30.12.2017 06:30

Ответы (4)


-4 плюса

1205 Репутация автора

Kotlin компилируется в байт-код JVM. Это НУЖНО JVM. Может использоваться вместо языка Java

Автор: efekctive Размещён: 30.12.2017 06:31

8 плюса

46274 Репутация автора

Да, JDK требуется для разработки Kotlin на JVM.

Котлин работает с JDK 1.6+.

Из руководства по началу работы .

Автор: zsmb13 Размещён: 30.12.2017 06:48

1 плюс

1806 Репутация автора

Да! Котлин 1.1.2 (и выше) требует JDK.

Кроме того, очень важно, что Kotlin не был поддержан, чтобы «заменить» Java . Это еще одно очень распространенное ошибочное понятие. Kotlin был просто добавлен в список языков, поддерживаемых для написания приложений для Android.

Вы можете проверить ссылку ниже, чтобы почувствовать историю языка: https://en.wikipedia.org/wiki/Kotlin_(programming_language)

Автор: Taslim Oseni Размещён: 30.12.2017 07:45

2 плюса

16334 Репутация автора

Как уже упоминалось, JVM Kotlin требует JVM для работы. Kotlin компилируется в байт-код JVM, что означает, что он предъявляет те же требования, что и Java (среда выполнения и комплект разработки). Именно поэтому у Kotlin есть Java-взаимодействие. Кроме того, это тот, который вы, скорее всего, будете использовать с Android.

Тем не менее, есть родной Kotlin . Сам SDK немного отличается от JVM Kotlin, и это все еще WIP, но он компилируется без необходимости JVM. В частности, он компилируется в собственную цель с использованием LLVM. Эта версия Kotlin поддерживает C взаимодействия.

Kotlin Native также открывает двери для Kotlin Multiplatform , которая компилирует все, что вы хотите (мобильные цели, цели для настольных компьютеров, и объединяет все это в одно и включает взаимодействие с собственным языком программирования). ПРИМЕЧАНИЕ: я не уверен, что компилирует Kotlin Native с Multiplatform. Некоторые демонстрационные проекты используют Kotlin JVM в модуле Android, что предполагает, что он не использует собственный код в стиле NDK. Мультиплатформы, как и Native, являются экспериментальными. Я также почти не касался Multiplatform, но, похоже, он использует комбинацию объявленных функций и функций, объявленных платформой. Я не уверен, как здесь работает взаимодействие (с точки зрения языков, а не взаимодействия модулей).

Мультиплатформенность не требует Native, но она позволяет значительно больше платформ. Если вы используете кроссплатформенную библиотеку Java (например, LibGDX) или иным образом собираете модули с ядром и платформами, вы также можете использовать здесь Multiplatform. Однако обратите внимание, что для этого, вероятно, требуется JDK, хотя это зависит от вашего проекта.

В дополнение к этому есть также Kotlin.JS , который, как следует из названия, компилируется в JavaScript. В отличие от Kotlin JVM, он, естественно, не требует JVM. Однако вместо этого требуются API, связанные с JavaScript. И, как и следовало ожидать, Kotlin.JS поддерживает взаимодействие с JavaScript.

TL; DR:

JDK не всегда требуется. Kotlin Native и Kotlin JS не требуют JDK, потому что цели, с которыми они собираются, отсутствуют в JVM.

Автор: Zoe Размещён: 16.05.2018 04:15
Вопросы из категории :
32x32