Spec-Zone.ru › Kotlin 1.7

Дорожная карта Kotlin

Последнее изменение

Июнь 2022

Следующее обновление

Ноябрь 2022

Добро пожаловать на дорожную карту Kotlin! Получите предварительный просмотр приоритетов команды Kotlin.

Основные приоритеты

Цель этой дорожной карты — предоставить вам общую картину. Вот список наших основных приоритетов — областей, в которые мы вкладываем наибольшие усилия:

  • Быстрая обратная связь: ускорение цикла изменение-тест-отладка.

  • Новый компилятор: переработка компилятора Kotlin, оптимизированного для скорости, параллельности и унификации. Позже мы также будем работать над возможностью добавления плагинов.

  • Быстрый и стабильный IDE: повышение стабильности и производительности плагина Kotlin.

  • Kotlin для серверного JVM-разработки: расширение поддержки вариантов использования на стороне сервера во всем экосистеме Kotlin.

  • Kotlin Multiplatform Mobile: улучшение пользовательского опыта и набора функций для совместного использования кода на мобильных платформах.

Дорожная карта Kotlin по подсистемам

Чтобы увидеть самые большие проекты, над которыми мы работаем, посетите доску YouTrack или таблицу Подробности дорожной карты.

Если у вас есть какие-либо вопросы или отзывы о дорожной карте или пунктах в ней, вы можете разместить их на билетах YouTrack или в канале #kotlin-roadmap в Slack Kotlin (запросить приглашение).

Доска YouTrack

Посетите доску дорожной карты в нашем трекере задач YouTrack YouTrack

Roadmap board in YouTrack

Подробности дорожной карты

Подсистема

В данный момент в фокусе

Язык

  • 🆕 Ввести специальный синтаксис для оператора until

  • Исследовать и разработать прототип решения на основе пространств имён для статических элементов и статических расширений

  • Поддержка встроенных запечатанных классов

  • Проектирование и реализация решения для toString для объектов

  • Обеспечить современную и производительную замену для Enum.values()

  • Множественные получатели в функциях/свойствах-расширениях

Ядро компилятора

  • Поддерживать текущий компилятор

  • Улучшить Kotlin scripting

Компилятор K2

  • 🆕 Выпуск K2 Beta

  • 🆕 Обеспечить альфа-поддержку Native в платформе K2

  • 🆕 Обеспечить альфа-поддержку JS в платформе K2

  • 🆕 Поддержка Multiplatform в платформе K2

  • Стабилизировать API плагина компилятора K2

Kotlin/JVM

  • Поддержка kapt в JVM IR

  • Исправить проблемы, связанные со встроенными классами на JVM

  • Поддерживать новый бэкэнд JVM IR

  • Улучшить время компиляции нового бэкэнда JVM IR

  • Стабилизировать экспериментальные функции, специфичные для JVM

Kotlin/JS

  • Сделать новый бэкэнд JS IR стабильным

  • Поддерживать старый бэкэнд JS, исправляя критические ошибки

Kotlin/Wasm

  • Реализовать экспериментальную версию бэкэнда компилятора Kotlin/Wasm

Примечание: поддержка Wasm в Kotlin/Native (через LLVM) будет устаревшей и удалена

Kotlin/Native

  • 🆕 Перевести новый менеджер памяти в Beta и включить его по умолчанию

  • Улучшить время компиляции

  • Улучшить экспорт кода Kotlin в Objective-C

  • Native: обеспечить бинарную совместимость между инкрементными релизами

Kotlin Multiplatform

  • 🆕 Перевести Kotlin Multiplatform Mobile в Beta

  • 🆕 Улучшить поддержку Android в проектах Multiplatform

  • 🆕 Стабилизировать klib

  • Улучшить стабильность и надёжность инструментария multiplatform

IDE

  • 🆕 Стабилизировать анализ кода

  • Сделать обновление версий компилятора/платформы быстрее

  • Улучшить поддержку проектов Multiplatform

  • Стабилизировать плагин Eclipse

  • Создать прототип плагина IDE с новым фронтендом компилятора

  • Улучшить производительность IDE

  • Улучшить возможности отладки

Инструменты сборки

  • 🆕 Сделать поддержку избегания компиляции стабильной для Gradle

  • Обеспечить лучший опыт работы с Kotlin Daemon

  • Улучшить производительность инкрементной компиляции Gradle

Библиотеки

  • 🆕 Продолжить разработку и стабилизацию стандартной библиотеки

  • Выпустить kotlinx-metadata-jvm как Стабильную

  • Выпустить Dokka как Стабильную

  • Запустить kotlinx-kover и продолжить ее доработку

  • Выпустить kotlinx-serialization 1.4

  • Выпустить kotlinx-coroutines 1.7

  • Стабилизировать и документировать atomicfu

  • Улучшить библиотеку kotlinx-datetime

Сайт

  • Сделать сайт Kotlin удобным для мобильных устройств

  • Сделать интерфейс и навигацию согласованными

  • Улучшить Kotlin Playground

  • Этот план дорожек не является исчерпывающим списком всех задач, над которыми работает команда, а лишь перечисляет самые крупные проекты.

  • Нет никаких обязательств по реализации конкретных функций или исправлений в конкретных версиях.

  • Мы будем корректировать наши приоритеты по ходу дела и обновлять план примерно раз в шесть месяцев.

Что изменилось с ноября 2021 года

Выполненные пункты

Мы завершили следующие пункты из предыдущей дорожной карты:

  • ✅ Язык: Разрешить обозначаемые точно не-null типы

  • ✅ Язык: Разрешить реализацию делегированием к встраиваемому значению встроенного класса

  • ✅ Язык: Выпустить аннотации OptIn

  • ✅ Язык: Выпустить вывод для билдера

  • ✅ Язык: Поддержка sealed (исчерпывающих) операторов when

  • ✅ Язык: Прототип нескольких получателей

  • ✅ Ядро компилятора: Завершить поддержку jspecify

  • ✅ K2 компилятор: Выпустить K2/JVM компилятор в Alpha

  • ✅ K2 компилятор: Реализовать поддержку базовой оценки во время компиляции

  • ✅ Kotlin/JVM: Поддержка ссылок на методы конструкторов функциональных интерфейсов

  • ✅ Kotlin/JS: JS IR BE: Добавить возможность генерировать отдельные JS файлы для каждого модуля

  • ✅ Kotlin/Native: Поднять новый менеджер памяти до Alpha

  • ✅ Multiplatform: Улучшить пользовательский интерфейс использования Native библиотек в Kotlin

  • ✅ Multiplatform: Улучшить опыт настройки среды для проектов KMM

  • ✅ Multiplatform: Улучшить DSL для управления бинарным выводом Kotlin/Native

  • ✅ IDE: Улучшить мастер Нового проекта

  • ✅ Инструменты сборки: Заставить kapt работать из коробки с последними JDK

  • ✅ Инструменты сборки: Улучшить пользовательский опыт работы с плагином Kotlin Gradle

  • ✅ Веб-сайт: Обновить графические элементы сообщества до нового визуального стиля Kotlin

Новые пункты

Мы добавили следующие пункты в дорожную карту:

  • 🆕 Язык: Ввести специальный синтаксис для оператора until

  • 🆕 K2 компилятор: Выпустить K2 Beta

  • 🆕 K2 компилятор: Предоставить Alpha поддержку Native в платформе K2

  • 🆕 K2 компилятор: Предоставить Alpha поддержку JS в платформе K2

  • 🆕 K2 компилятор: Поддержка Multiplatform в платформе K2

  • 🆕 Kotlin/Native: Поднять новый менеджер памяти до Beta и включить его по умолчанию

  • 🆕 Multiplatform: Поднять Kotlin Multiplatform Mobile до Beta

  • 🆕 Multiplatform: Улучшить поддержку Android в проектах Multiplatform

  • 🆕 Multiplatform: Устойчивить klib

  • 🆕 IDE: Устойчивить анализ кода

  • 🆕 Библиотеки: Продолжить разработку и устойчивость стандартной библиотеки

  • 🆕 Инструменты сборки: Сделать поддержку избежания компиляции стабильной для Gradle

Удаленные пункты

Мы удалили следующие пункты из дорожной карты:

  • ❌ Язык: Предоставить оператор equals с точной сигнатурой для встроенных классов

  • ❌ Kotlin/JVM: Разрешить приватные классы или алиасы типов с одинаковым именем в разных файлах на JVM

  • ❌ Kotlin/JVM: Предоставить возможность перечислять все прямые подклассы закрытого класса во время компиляции без рефлексии

  • ❌ Kotlin/JVM: Поддержка Java синтетических ссылок на свойства

  • ❌ Kotlin/JS: JS: поддержка ES6 как целевой компиляции

  • ❌ Kotlin/JS: Улучшить поддержку Dukat

  • ❌ Kotlin/Native: Поддержка построения Kotlin/Native для Mac Catalyst (x86-64 и arm64)

  • ❌ Kotlin/Native: Поддержка прямой взаимозаменяемости с Swift

  • ❌ Kotlin/Native: Поддержка запуска двоичных файлов, созданных Kotlin/Native, на Alpine Linux

  • ❌ IDE: Реализовать расширенные инструменты, которые есть у пользователей Java, но отсутствуют в Kotlin

  • ❌ IDE: Улучшить качество менее часто используемых функций

  • ❌ Инструменты сборки: Улучшить качество импорта Gradle

  • ❌ Веб-сайт: Предоставить инфраструктуру для локализации документации сообществом

Пункты в процессе

Все остальные ранее указанные пункты дорожной карты находятся в стадии выполнения. Вы можете проверить их билеты YouTrack для получения обновлений.

Последнее изменение: 06 сентября 2022
Выпуски плагинов Kotlin Обзор коллекций

© 2010–2022 JetBrains s.r.o. and Kotlin Programming Language contributors
Licensed under the Apache License, Version 2.0.
https://kotlinlang.org/docs/roadmap.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API