Kotlin Multiplatform Broadcast
9.48K subscribers
834 photos
53 videos
1.13K links
Новости и фичи Kotlin, а также Kotlin Multiplatform

YouTubе канал: https://youtube.com/androidBroadcast
Compose Multiplatform @compose_broadcast
iOS разработка @ios_broadcast
Новости Android @android_broadcast
Реклама и прочее @android_broadcast_bot
Download Telegram
#KEEP

Design Notes on Kotlin Value Classes

Описание текущего состояния value классов в Kotlin и их будущего.
#KMM

📺 Meet Kotlin Multiplatform Mobile! (6 мин)

Видеоинструкция как начать разрабатывать кроссплатформенные приложения, используя Kotlin Multiplatform Mobile (KMM).
#Navigation

A comprehensive hundred-line navigation for Jetpack/Desktop Compose

Навигация - важная часть практически любого приложения. В этой статье Аркадий Иванов рассказывает, как быстро создать свой многофункциональный навигатор в чистом Composable мире. Больше всего это актуально для Desktop Compose, но также может быть полезно и для Jetpack Compose.
#AndroidBroadcast

Ktor: микросервисы, веб приложения и клиенты в одном фреймворке (Livestream)
Сегодня в 19.00 (GMT+3)

В гости Android Broadcast приходит Леонид Сташевский - Tech Lead проекта Ktor из JetBrains. Мы обсудим с ним Ktor, его особенности и будущее.

Подключайтесь чтобы послушать и задавать свои вопросы
Forwarded from Android Broadcast
#Kotlin

Announcing Kotlin Symbol Processing (KSP) Alpha

С переходом нового компилятора Kotlin в Beta статус плагины компилятора тоже развиваются. Помните Kotlin Symbol Processing (KSP), которая призвана ускорить генерацию кода в Kotlin проектах, заменив KAPT? Так вот она перешла в альфу

Статус поддерживаемых библиотек сейчас можно найти здесь, а также добавить те, которые важны вам. Сейчас адаптацию пока начали делать только в Room.
Early Access Program for Qodana, a New Product That Brings the “Smarts” of JetBrains IDEs Into Your CI Pipeline

IDEA помимо хорошего функционала по навигацию и рефакторинга кода содержит внутри себя множество проверок кода на разных языках - статический анализ. Использовать их отдельно от IDEA не представляется возможным, но новый продукт от JetBrains это делает. Встречайте Qodana!

Проект состоит из 2 частей: ядро IDEA без GUI для использования на CI как линтера и интерактивный Web UI для отчётов.

Посмотреть примеры работы можно на qodana.beta.teamcity.com (логинтесь как гость) и в любом проекте открывает таб "Qodana".

Использовать Qodana можно через Docker образ, GitHub Action, плагин для TeamCIty или как облачный сервис.

После такого понадобятся ли нам Detekt, Ktlint и прочие анализаторы кода? Как минимум нужен локальный Gradle плагин ещё
#Kotlin1_5

New Language Features Preview in Kotlin 1.4.30

В Kotlin 1.5 появятся новые возможности, которые уже можно попробовать в 1.4.30:
👉 Стабилизация inline value классов
👉 Экспериментальная поддержка JVM records
👉 Эксперементальная поддержка sealed интерфейсов и другие улучшения sealed классов

Чтобы их попробовать вам надо указать у себя в проекте версию языка 1.5. Подробнее как это сделать здесь.
Свойства против методов

Одна из сложностей в написании кода в Kotlin заключается в том что не во всех случаях очевидно понять что лучше использовать: свойство или метод. Официальная документация дает следующие рекомендации по использованию свойств:
👉 если свойство не бросает исключение (exception)
👉 дёшево для вычисления (или можно закешировать при первом запуске)
👉 возвращает одно и то же значение при каждом вызове, если состояние объекта не изменилось

Авто статьи разбирается в этих понятиях подробнее и раскрывает что не всё так очевидно
Multik: Multidimensional Arrays in Kotlin

JetBrains представила первое превью библиотеки Multik, которая предназначена для работы с многомерными массивами
#IDEA

Празднование 20 лет IntelliJ IDEA

Популярнейшей IDE исполнилось 20 лет. В честь этого события нас ждет конференция, которая пройдет 25 и 26 февраля. Мы узнаем о возможностях продукта и его будущем.
#Flow

Backpressure in your Kotlin Flows

Разбор как работает backpressure в Kotlin Flow
#Coroutines

How We Test Concurrent Primitives in Kotlin Coroutines

Рассказ о библиотеки для тестирования concurrent структур данных - Lincheck
#Multiplatform #Mobile

Готовим Большую Фичу на Kotlin Multiplatform. Доклад Яндекса

Яндекс рассказывает о своем опыте интеграции фичи в мобильный карты Яндекса с переиспользованием коды между Android и iOS приложениями
Вышел Kotlin 1.4.31 с исправлениями ошибок версии 1.4.30
#Coroutines #Flow #Sequence

Use Sequence instead of Kotlin Flow when…

Flow - классный подход, но всегда ли нужно использовать его, а можно обойтись его синхронным подходом - Sequence? В статье автор разбирается когда вполне не нужны Coroutines
#Multiplatform #Mobile #HowTo

📺 Как создать Kotlin Multiplatform Mobile проект (28 мин)

Демонстрация создания Kotlin Mobile Multiplatform проекта в Android Studio при помощи KMM плагина. Добавляются необходимые зависимости и прочая базовая настройка.
#Coroutines

Вышла новая версия kotlinx.coroutines 1.4.3 в которой произошли минорные улучшения и исправление багов
Вышла первая превью следующей версии Kotlin - 1.5.0

Первая превью не отметилась множеством нововведений, но вот краткий список:
👉 Конкатенация строка с помощью invokedynamic для JVM target 9+
👉 Поддержка Java records
👉 JVM target 1.6 теперь Deprecated
👉 Поддержка suspend функций в функциональных интерфейсах
👉 Возможность объявлять protected конструкторы в sealed классах
👉 Немного улучшений в IDE
👉 Улучшение производительность
👉 Исправление багов
#Coroutines #Flow

My MutableStateFlow Didn’t Emit!

Успели столкнуться с ситуацией, когда MutableStateFlow ничего не эмитет? Это может происходить, потому что StateFlow предварительно проверяет на то что новое и старое значение отличаются с помощью equals