Вышел релиз кандидат Kotlin 1.5.0
Самые интересные изменения:
👉 Unsigned целочисленные типы теперь stable
👉 Расширения для java.nio.file.Path API
👉 Функции-расширения для строк
👉 Убрана путаница в работе Char-to-code и Char-to-digit
👉 Расшиерние multiplatform char API
👉
👉 Обновление Duration API и изменения в работе под капотом
👉 Новые математические операции:
👉 Новые расширения для коллекций
👉 Обновление тестовой библиотеки
👉 Поддержка inline классов в Kotlinx serialization
👉 Поддержка Gradle 7.0
👉 Поддержка Gradle configuration cache в kotlin.multiplatform плагине
👉 Улучшение производительности
👉 Исправление багов
Kotlin 1.5.0-RC будет совместим с Kotlin 1.5.0.
Самые интересные изменения:
👉 Unsigned целочисленные типы теперь stable
👉 Расширения для java.nio.file.Path API
👉 Функции-расширения для строк
uppercase()
, lowercase()
, titlecase()
без локалей в параметрах👉 Убрана путаница в работе Char-to-code и Char-to-digit
👉 Расшиерние multiplatform char API
👉
String?.toBoolean()
👉 Обновление Duration API и изменения в работе под капотом
👉 Новые математические операции:
floorDiv()
, mod()
👉 Новые расширения для коллекций
firstNotNullOf()
and firstNotNullOfOrNull()
👉 Обновление тестовой библиотеки
👉 Поддержка inline классов в Kotlinx serialization
👉 Поддержка Gradle 7.0
👉 Поддержка Gradle configuration cache в kotlin.multiplatform плагине
👉 Улучшение производительности
👉 Исправление багов
Kotlin 1.5.0-RC будет совместим с Kotlin 1.5.0.
#KMM #Gradle
Getting your KMM project working with Android Gradle Plugin 7.0+
Если хотите насладиться последними возможностями Jetpack Compose, писать под Android и iOS и шарить код через Kotlin Multiplatform, тогда вам придётся иметь дело Android Studio Artict Fox, которая находится в альфа и поддерживает только Gradle 7.0, который внёс breaking changes в API работы плагинов (не всех).
В статье автор разбирает как правильно настроить всё на вашем компьютере, чтобы у вас всё заработало без проблем.
Getting your KMM project working with Android Gradle Plugin 7.0+
Если хотите насладиться последними возможностями Jetpack Compose, писать под Android и iOS и шарить код через Kotlin Multiplatform, тогда вам придётся иметь дело Android Studio Artict Fox, которая находится в альфа и поддерживает только Gradle 7.0, который внёс breaking changes в API работы плагинов (не всех).
В статье автор разбирает как правильно настроить всё на вашем компьютере, чтобы у вас всё заработало без проблем.
#Realm #Multiplatform
Realm Kotlin Multiplatform SDK
Realm создали чистое Kotlin SDK и сделали его сразу Multiplatfrom. Написали свой Kotlin Compiler Plugin, чтобы заменить кодогенерацию процессингом аннотаций и избавиться от рефлексии.
Realm Kotlin Multiplatform SDK
Realm создали чистое Kotlin SDK и сделали его сразу Multiplatfrom. Написали свой Kotlin Compiler Plugin, чтобы заменить кодогенерацию процессингом аннотаций и избавиться от рефлексии.
#Kotlin1_5
📺 Sealed Interfaces and Sealed Classes Improvements (5 мин)
Совсем скоро нас ждёт новая версия Kotlin и уже начинают рассказывать о возможностях новой версии языка - sealed interface и расширениях возможностей объявления sealed classes, и конечно же их текущих ограничениях.
Помимо прочего обсуждается interop с Java Sealed Class/Interface (версия 15 и 16)
📺 Sealed Interfaces and Sealed Classes Improvements (5 мин)
Совсем скоро нас ждёт новая версия Kotlin и уже начинают рассказывать о возможностях новой версии языка - sealed interface и расширениях возможностей объявления sealed classes, и конечно же их текущих ограничениях.
Помимо прочего обсуждается interop с Java Sealed Class/Interface (версия 15 и 16)
#Kotlin1_5
📺 Support for JVM Records in Kotlin 1.5.0 (2 мин)
В Kotlin 1.5.0 появится поддержка Java Records, который является аналогом Kotlin Data Class. Вы теперь можете добавить
📺 Support for JVM Records in Kotlin 1.5.0 (2 мин)
В Kotlin 1.5.0 появится поддержка Java Records, который является аналогом Kotlin Data Class. Вы теперь можете добавить
@JvmRecord
и байткод будет генерироваться по другомуThis media is not supported in your browser
VIEW IN TELEGRAM
#GraphQL
Вышел GraphQL Kotlin 4.0
Мажорное обновление мультиплатформенной библиотеки для работы с GraphQL, которое базируется на Ktor. В новой версии произошло много чистки API и рефакторинга старого кода
Вышел GraphQL Kotlin 4.0
Мажорное обновление мультиплатформенной библиотеки для работы с GraphQL, которое базируется на Ktor. В новой версии произошло много чистки API и рефакторинга старого кода
#Kotlin1_5
From inline to Value Classes
В Kotlin 1.5.0 нас ждёт стабилизация inline классов и одновременная замена. Теперь они станут частью value классов, новой фичи Kotlin, которая будет позже.
From inline to Value Classes
В Kotlin 1.5.0 нас ждёт стабилизация inline классов и одновременная замена. Теперь они станут частью value классов, новой фичи Kotlin, которая будет позже.
#SQL #Multiplatform
Вышел SQLDelight 1.5.0 в котором произошло множество улучшений и появилась поддержка Android Paging 3.0.
Вышел SQLDelight 1.5.0 в котором произошло множество улучшений и появилась поддержка Android Paging 3.0.
📺 More about future support for value classes
В Kotlin 1.5 inline классы станут value и лишь малой реализацией будущем большой фичи, подробности о которой и рассказываются в видео. Идея строится чтобы произвольные объекты могли хранится не только по ссылке, но и аналогичном примитивным типам Java.
Всё пока вилами по воде, и не факт что вообще value класс могут появится в Kotlin.
В Kotlin 1.5 inline классы станут value и лишь малой реализацией будущем большой фичи, подробности о которой и рассказываются в видео. Идея строится чтобы произвольные объекты могли хранится не только по ссылке, но и аналогичном примитивным типам Java.
Всё пока вилами по воде, и не факт что вообще value класс могут появится в Kotlin.
#Coroutines
Вышел Release Candidate следующей версии библиотеки Coroutines - 1.5.0-RC. Нас ждёт:
👉 массовая чистка Channel API и удаление уже depracted API ранее.
👉
👉
👉интеграция с другими реактивными библиотеками теперь полностью стабильна и улучшена работа
👉Новые операторы
👉Улучшение производительности
👉Исправление багов
Вышел Release Candidate следующей версии библиотеки Coroutines - 1.5.0-RC. Нас ждёт:
👉 массовая чистка Channel API и удаление уже depracted API ранее.
👉
BroadcastChannel
и ConflatedBroadcastChannel
помечены как ObsoleteCoroutinesApi
. Используйте SharedFlow
или StateFlow
👉
callbackFlow
и channelFlow
теперь стабильна👉интеграция с другими реактивными библиотеками теперь полностью стабильна и улучшена работа
👉Новые операторы
Flow
👉Улучшение производительности
👉Исправление багов
#Serializarion
Вышла kotlinx.serialization 1.2.0
🚀 Ускорение кодирования и декодирования JSON
👉 Возможность задавать несколько имён одному и то же property
👉 JsonConfiguration теперь часть публичного API
👉 Генерация .proto файлов на основе сериализуемых Kotlin классов
👉 Сериализация generic классов
🕓 Поддержка watchOS
🔨 Исправление багов
Вышла kotlinx.serialization 1.2.0
🚀 Ускорение кодирования и декодирования JSON
👉 Возможность задавать несколько имён одному и то же property
👉 JsonConfiguration теперь часть публичного API
👉 Генерация .proto файлов на основе сериализуемых Kotlin классов
👉 Сериализация generic классов
🕓 Поддержка watchOS
🔨 Исправление багов
Новая библиотека Reflekt от JetBrains Research, которая в compile time заменяет вызовы рефлексии на обычные API, что позволяет не тормозить приложения во время работы.
#Multipalform #Mobile #Пример
Вышел официальный пример на KMM - KMM RSS Reader
Приложение является официальным примером от JetBrains реализации мобильного приложения для iOS и Android на основе Kotlin Mutiplatform Mobile. Построено всё по принципам Clean Architecture и используется Redux подобный подход. Приложение использует:
👉 Jetpack Compose
👉 SwiftUI
👉 Coroutines
👉 KotlinX Serialization
👉 Ktor Http Client
👉 Modo
В README вы найдете все подробности и детали архитектуры приложения.
Вышел официальный пример на KMM - KMM RSS Reader
Приложение является официальным примером от JetBrains реализации мобильного приложения для iOS и Android на основе Kotlin Mutiplatform Mobile. Построено всё по принципам Clean Architecture и используется Redux подобный подход. Приложение использует:
👉 Jetpack Compose
👉 SwiftUI
👉 Coroutines
👉 KotlinX Serialization
👉 Ktor Http Client
👉 Modo
В README вы найдете все подробности и детали архитектуры приложения.
Effective Kotlin Item 36: Prefer composition over inheritance
Рассказа почему композиция лучше наследования и какие ограничения накладываются механизмом наследования в Kotlin/Java
Рассказа почему композиция лучше наследования и какие ограничения накладываются механизмом наследования в Kotlin/Java
#Compose
Technology Preview: Jetpack Compose for Web
Compose уже не только в Java мире, но и в JS - тех превью Compose для Web уже здесь! Оно полностью не готово для использования в реальных приложениях или проводить тесты производительности, но вы уже можете посмотреть на видение реализации JetBrains.
Landing страницу Compose for Web уже переписали на новый инструмент
Technology Preview: Jetpack Compose for Web
Compose уже не только в Java мире, но и в JS - тех превью Compose для Web уже здесь! Оно полностью не готово для использования в реальных приложениях или проводить тесты производительности, но вы уже можете посмотреть на видение реализации JetBrains.
Landing страницу Compose for Web уже переписали на новый инструмент
Вышел Kotlin 1.5.0
Новая версия языка Kotlin уже доступна официально для всех и мы получаем:
🔥 Новый JVM IR компилятор теперь является основным. Это приближает релиз Jetpack Compose 1.0 ближе
👉 Поддержка JVM records (Android разработке недоступна) аля data clas
👉 sealed interface
👉 value классы, которые пришли на смену inline классам
👉 value классы сменили inline и теперь они stable
👉 Улучшения в sealed классах
Стандартная библиотека
👉 unsigned числовые типы теперь стабильные
👉 Расширения для java.nio.file.Path
👉 Улучшения в String и Char API
👉 Улучшение тестовой библиотеки
JVM
👉 Компиляция SAM адаптеров и лямбд в invokedynamic
👉 Target JVM 1.8 теперь основной, а 1.6 - deprecated
👉 Улучшение обработки nullability из Java
Также без улучшений скорости не остался Kotlin/Native, а Kotlin/JS IR компилятор перешёл в Beta.
25 мая пройдет Kotlin 1.5 Online Event. Регистрация бесплатная
Новая версия языка Kotlin уже доступна официально для всех и мы получаем:
🔥 Новый JVM IR компилятор теперь является основным. Это приближает релиз Jetpack Compose 1.0 ближе
👉 Поддержка JVM records (Android разработке недоступна) аля data clas
👉 sealed interface
👉 value классы, которые пришли на смену inline классам
👉 value классы сменили inline и теперь они stable
👉 Улучшения в sealed классах
Стандартная библиотека
👉 unsigned числовые типы теперь стабильные
👉 Расширения для java.nio.file.Path
👉 Улучшения в String и Char API
👉 Улучшение тестовой библиотеки
JVM
👉 Компиляция SAM адаптеров и лямбд в invokedynamic
👉 Target JVM 1.8 теперь основной, а 1.6 - deprecated
👉 Улучшение обработки nullability из Java
Также без улучшений скорости не остался Kotlin/Native, а Kotlin/JS IR компилятор перешёл в Beta.
25 мая пройдет Kotlin 1.5 Online Event. Регистрация бесплатная
#AndroidBroadcast #Kotlin
📺 Что нового в Kotlin 1.5.0
Не успела новая версия языка выйти, а на YouTube уже разбор всех возможностей
📺 Что нового в Kotlin 1.5.0
Не успела новая версия языка выйти, а на YouTube уже разбор всех возможностей
#Serialization
kotlinx.serialization 1.2 Released: High-Speed JSON Handling, Value Class Support, Overhauled Docs, and more
Я уже рассказывал о новых возможностях Kotlinx Serialization, но вот вам официальный анонс и видео
kotlinx.serialization 1.2 Released: High-Speed JSON Handling, Value Class Support, Overhauled Docs, and more
Я уже рассказывал о новых возможностях Kotlinx Serialization, но вот вам официальный анонс и видео
#Corouitnes #Flow
Things to know about Flow’s shareIn and stateIn operators
Разбор как операторы shareIn и stateIn как могут увеличить производительность в отдельных случаях, демонстрация разницы между ними и ошибки, которые пользователи могут допустить с ними
Things to know about Flow’s shareIn and stateIn operators
Разбор как операторы shareIn и stateIn как могут увеличить производительность в отдельных случаях, демонстрация разницы между ними и ошибки, которые пользователи могут допустить с ними
Вышла kotlinx-datetime 0.2.0
👉 Поддержка
👉 Нормализация компонентов
👉 Возможность парсинга
👉 Поддержка
kotlinx.serialization
👉 Нормализация компонентов
DateTimePeriod
👉 Возможность парсинга
Instant
из строки со смещением UTC