#IDEA
Вышел Kotlin плагин 2021.1
Kotlin плагин стал частью IDEA и теперь будет выходить вместе с ней. В новой версии нас ждёт:
🚀 Ускорено дополнение кода (code completion). Ускорение на 50%
🚀 Ускорено подсвечивание кода. Ускорение на 25%
👉 Возможность "Change signature" теперь работает лучше
👉 Для свойств с собственным getter теперь можно будет выполнить их код и получить их значение в Debug панеле
👉 Автодополнение кода для аргументов типа (generic)
👉 Теперь UML диаграммы поддерживают работу с Kotlin
👉 Все другие возможности. которые были в 2020.3 теперь также доступны новому Kotlin плагину
Также спойлернули что будут вестись работы над улучшением дебагинга Kotlin кода. Взгрустнул что теперь все фичи работы с Kotlin до Android Studio станут приезжать реже из-за синхронизации графиков релиза Kotlin плагина с IDEA
Вышел Kotlin плагин 2021.1
Kotlin плагин стал частью IDEA и теперь будет выходить вместе с ней. В новой версии нас ждёт:
🚀 Ускорено дополнение кода (code completion). Ускорение на 50%
🚀 Ускорено подсвечивание кода. Ускорение на 25%
👉 Возможность "Change signature" теперь работает лучше
👉 Для свойств с собственным getter теперь можно будет выполнить их код и получить их значение в Debug панеле
👉 Автодополнение кода для аргументов типа (generic)
👉 Теперь UML диаграммы поддерживают работу с Kotlin
👉 Все другие возможности. которые были в 2020.3 теперь также доступны новому Kotlin плагину
Также спойлернули что будут вестись работы над улучшением дебагинга Kotlin кода. Взгрустнул что теперь все фичи работы с Kotlin до Android Studio станут приезжать реже из-за синхронизации графиков релиза Kotlin плагина с IDEA
#multiplatform #подкаст
Talking Kotlin: MVIKotlin and Decompose with Arkadii Ivanov from Bumble
Интервью с автором MVIKotlin, Decompose и Reaktive - Аркадием Ивановым
Talking Kotlin: MVIKotlin and Decompose with Arkadii Ivanov from Bumble
Интервью с автором MVIKotlin, Decompose и Reaktive - Аркадием Ивановым
#coroutines
Use suspendCoroutine to connect callbacks and coroutines
Руководство по написанию адаптера между любым асинхронным вызовом и Coroutine
Use suspendCoroutine to connect callbacks and coroutines
Руководство по написанию адаптера между любым асинхронным вызовом и Coroutine
#Multiplatform
Руководство по старту работы с Kotlin Multiplatform Mobile от IceRock
👉 Почему выбирают Kotlin Multiplatform Mobile?
👉 Настройка окружения
👉 Погружение в Kotlin Multiplatform Mobile
👉 Справка по работе с KMM
👉 Работа с KMM библиотеками
👉 FAQ
Руководство по старту работы с Kotlin Multiplatform Mobile от IceRock
👉 Почему выбирают Kotlin Multiplatform Mobile?
👉 Настройка окружения
👉 Погружение в Kotlin Multiplatform Mobile
👉 Справка по работе с KMM
👉 Работа с KMM библиотеками
👉 FAQ
#Network #Multiplatform
An Interface for Multiplatform Networking
Если вы пишете мультиплатформенное приложение на Kotlin и хотите выполнять сетевые операции, то вполне возможно вам на ум придёт решение Ktor. В Autodesk написали свою абстракцию над сетевыми операциями для более эффективного решения. Кроме набора базовых классов и интерфейсов ничего в статье не показывают (
An Interface for Multiplatform Networking
Если вы пишете мультиплатформенное приложение на Kotlin и хотите выполнять сетевые операции, то вполне возможно вам на ум придёт решение Ktor. В Autodesk написали свою абстракцию над сетевыми операциями для более эффективного решения. Кроме набора базовых классов и интерфейсов ничего в статье не показывают (
Вышел релиз кандидат 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 уже переписали на новый инструмент