Kotlin 1.6.0, последняя версия модного языка JetBrains для JVM, веб-разработки и мобильной разработки, была выпущена с новым менеджером памяти для встроенной разработки, которая все еще находится на экспериментальной стадии.
Диспетчер памяти для Kotlin/Native, который компилирует код в собственные двоичные файлы, приближает язык к обеспечению единообразного опыта разработки. Диспетчер памяти снимает существующие ограничения на совместное использование объектов между потоками и предлагает герметичные примитивы параллельного программирования, которые безопасны и не требуют специального управления или аннотаций.
Диспетчер памяти возглавляет длинный список возможностей Kotlin 1.6.0, который был описан как стабилизационная версия и опубликован 16 ноября. Функции, ранее объявленные в Kotlin экспериментальными, теперь доступны по умолчанию в Kotlin 1.6.0. Инструкции по установке этой версии можно найти на сайте blog.jetbrains.com. Пользователи IDE JetBrains IntelliJ Idea или Android Studio могут обновляться автоматически.
Другие функции Kotlin 1.6.0 включают в себя:
- Для Kotlin/Native зависимость LLVM была переработана, в результате чего версия LLVM стала 11.1.0, а также уменьшен размер зависимости и другие преимущества.
- Запечатанный
when
Операторы выдают предупреждение компилятора, если оператор if не является исчерпывающим. Эта функция, которая теперь находится в стабильном состоянии после предварительной версии Kotlin 1.5.30, делает код более безопасным, без необходимости разработчикам вводить свои собственные функции. - Поддержка стабилизирована для реализации
suspend
функциональные типы как суперинтерфейсы. Этого не хватало в дизайне сопрограмм Kotlin. Также стабилизируется преобразование из обычного функционального типа в приостанавливаемый. Разработчики теперь могут передавать в качестве параметра любое выражение подходящего регулярного функционального типа, где ожидается приостановка. Компилятор автоматически выполнит преобразование. Эта функция устраняет несоответствие между обычными и приостанавливающими функциями в Kotlin. - Улучшен вывод типов компилятором для универсальных типов.
typeof
стабилизирован и может использоваться на любой платформе Kotlin. Он был доступен на JVM в экспериментальном порядке.- API Duration стабилизирован.
- В стандартной библиотеке следующие функции stdlib переведены в стабильную версию: построители коллекций, операторы вращения битов для целых чисел и функция регулярного выражения для разделения строки на последовательность.
- Для стандартного ввода предусмотрены новые функции для чтения с консоли.
- Плагин Kover Gradle, который сейчас находится на экспериментальной стадии, измеряет покрытие кода Kotlin, созданного с помощью компилятора JVM.
- Для Kotlin/JVM возможность повторяющихся аннотаций совместима с Java;
@kotlin.annotation.Repeatable
теперь принимает любое сохранение и делает аннотацию повторяемой как в Kotlin, так и в Java. - Что касается Kotlin/JS, разработчики, работающие на сервере без подключения к Интернету, могут отключить загрузку проектов Node.js и Yarn для Kotlin/JS и использовать экземпляры, уже имеющиеся на хосте.
Дальше читайте это:
- Облачные вычисления больше не являются пустяком
- Что такое генеративный ИИ? Искусственный интеллект, который создает
- Программирование с помощью ИИ: советы и лучшие практики от разработчиков
- Python пытается удалить GIL и повысить параллелизм
- 7 причин, по которым Java по-прежнему хороша
- Война за лицензирование открытого исходного кода окончена