Spec-Zone.ru › Kotlin 1.9

Устойчивость компонентов Kotlin

Язык и инструментарий Kotlin разделены на множество компонентов, таких как компиляторы для целей JVM, JS и Native, Стандартная библиотека, различные вспомогательные инструменты и так далее. Многие из этих компонентов были официально выпущены как Стабильные, что означает, что они развиваются в обратной совместимой манере, следуя принципам принципов Комфортных обновлений и Сохранения современности языка. К таким стабильным компонентам относятся, например, компилятор Kotlin для JVM, Стандартная библиотека и сопрограммы.

Следуя принципу Цикла обратной связи, мы выпускаем многие вещи рано для того, чтобы сообщество могло их опробовать, поэтому ряд компонентов еще не выпущены как Стабильные. Некоторые из них находятся на очень ранней стадии, другие — более зрелые. Мы отмечаем их как Экспериментальные, Альфа или Бета в зависимости от того, насколько быстро каждый компонент развивается и какой риск принимают пользователи, применяя его.

Объяснение уровней стабильности

Вот краткое руководство по этим уровням стабильности и их значению:

Экспериментальный означает «пробовать только в тестовых проектах»:

  • Мы просто пробуем идею и хотим, чтобы некоторые пользователи поиграли с ней и дали обратную связь. Если это не сработает, мы можем отбросить ее в любой момент.

Альфа означает «использовать на свой страх и риск, ожидайте проблем с миграцией»:

  • Мы решили коммерциализировать эту идею, но она еще не достигла окончательной формы.

Бета означает «вы можете использовать его, мы сделаем все возможное, чтобы свести к минимуму проблемы с миграцией для вас»:

  • Работа практически завершена, отзывы пользователей сейчас особенно важны.

  • Тем не менее, он еще не на 100% завершен, поэтому возможны изменения (включая изменения, основанные на ваших отзывах).

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

Мы используем термин экспериментальный, альфа и бета как предварительные стабильные уровни.

Стабильный означает «использовать даже в самых консервативных сценариях»:

  • Работа завершена. Мы будем развивать его в соответствии с нашими строгими правилами обратной совместимости. правилами обратной совместимости.

Обратите внимание, что уровни стабильности ничего не говорят о том, как быстро компонент будет выпущен как Стабильный. Аналогично, они не указывают, насколько компонент будет изменен до выпуска. Они только говорят о том, насколько быстро изменяется компонент и какой риск обновления испытывают пользователи.

Значки GitHub для компонентов Kotlin

Организация GitHub Kotlin GitHub содержит различные проекты, связанные с Kotlin. Некоторые из них мы развиваем постоянно, другие — это проекты побочного характера.

Каждый проект Kotlin имеет два значка GitHub, описывающие его стабильность и статус поддержки:

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

    • Experimental stability level обозначает Экспериментальный

    • Alpha stability level обозначает Альфа

    • Beta stability level обозначает Бета

    • Stable stability level обозначает Стабильный

  • Статус поддержки. Это демонстрирует нашу приверженность поддержанию проекта и помощи пользователям в решении их проблем. Уровень поддержки унифицирован для всех продуктов JetBrains.
    Подробнее см. документ JetBrains Confluence.

Устойчивость подкомпонентов

Стабильный компонент может иметь экспериментальный подкомпонент, например:

  • стабильный компилятор может иметь экспериментальную функцию;

  • стабильный API может включать экспериментальные классы или функции;

  • стабильный инструмент командной строки может иметь экспериментальные опции.

Мы гарантируем точное документирование подкомпонентов, не имеющих стабильного статуса. Мы также делаем все возможное, чтобы предупреждать пользователей, где это возможно, и просим явно включиться в использование функций, которые еще не были выпущены как стабильные.

END_OF_DOCUMENT_MARKER

Текущая стабильность компонентов Kotlin

Компонент

Статус

Статус с версии

Комментарий

Kotlin/JVM

Стабильный

1.0

Kotlin K2 (JVM)

Alpha

1.7

kotlin-stdlib (JVM)

Стабильный

1.0

Coroutines

Стабильный

1.3

kotlin-reflect (JVM)

Beta

1.0

Kotlin/JS (Classic back-end)

Стабильный

1.3

Устарел с версии 1.8.0, см. руководство по миграции IR

Kotlin/JVM (IR-based)

Стабильный

1.5

Kotlin/JS (IR-based)

Стабильный

1.8

Kotlin/Native Runtime

Beta

1.3

Kotlin/Native memory manager

Beta

1.7.20

Уровень стабильности такой же, как у Kotlin/Native

klib binaries

Beta

1.9.0

Kotlin Multiplatform

Beta

1.7.20

Kotlin/Native interop with C and Objective C

Beta

1.3

CocoaPods integration

Beta

1.3

Kotlin Multiplatform Mobile plugin for Android Studio

Beta

0.5.2

Версия отличается от версии языка

expect/actual language feature

Beta

1.2

KDoc syntax

Стабильный

1.0

Dokka

Beta

1.6

Scripting syntax and semantics

Alpha

1.2

Scripting embedding and extension API

Beta

1.5

Scripting IDE support

Beta

Доступно начиная с IntelliJ IDEA 2023.1 и более поздних версий

CLI scripting

Alpha

1.2

Compiler Plugin API

Experimental

1.0

Serialization Compiler Plugin

Стабильный

1.4

Serialization Core Library

Стабильный

1.0.0

Версия отличается от версии языка

Inline classes

Стабильный

1.5

Unsigned arithmetic

Стабильный

1.5

Contracts in stdlib

Стабильный

1.3

User-defined contracts

Experimental

1.3

Все остальные экспериментальные компоненты, по умолчанию

Experimental

N/A

Предыдущая версия (до 1.4) этой страницы доступна здесь.

Последнее изменение: 06 июля 2023
Эволюция Kotlin Стабильность компонентов Kotlin (до 1.4)

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

Spec-Zone.ru

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