В Kotlin 1.7.20 появился экспериментальный оператор
Подробности фичи и как включить ее здесь
..<
(появится в Kotlin 1.8), который позволит создать открытые интервалы. Он позволит заменить собой функцию until
. Также появился новый интерфейс в стандартной библиотеки для представления OpenEndRangeПодробности фичи и как включить ее здесь
👍33🤔12
The Art of Multiplatform Programming: The Secret to Maximizing Shared Code (14 мин)
Хотите пошарить как можно больше кода, то советы из статьи вам пригодятся. Все просто - описывайте платформенно независимые интерфейсы и делайте их платформенные реализации
Хотите пошарить как можно больше кода, то советы из статьи вам пригодятся. Все просто - описывайте платформенно независимые интерфейсы и делайте их платформенные реализации
🤔3
Mutation Testing in Kotlin
Мутационно тестирование - техника, которая проверяет качество теста, внесением модификаций в код. Если изменения приводят к провалу теста - все у вас хорошо. Статья показывает как это сделать в Kotlin
#testing
Мутационно тестирование - техника, которая проверяет качество теста, внесением модификаций в код. Если изменения приводят к провалу теста - все у вас хорошо. Статья показывает как это сделать в Kotlin
#testing
🤔10👍5😁1
Exploring "select" expression of Kotlin coroutines
select - это специальная функция, которая дожидается результата нескольких suspend функций и возвращает результат первой выполнившейся. В статье разбираются ее подробности и применение
В комментариях пишите примеры использования такой функции на практике
#coroutines
select - это специальная функция, которая дожидается результата нескольких suspend функций и возвращает результат первой выполнившейся. В статье разбираются ее подробности и применение
В комментариях пишите примеры использования такой функции на практике
#coroutines
👍13🤔8😁1
В Kotlin 1.7.20 можно попробовать Generic Inline Classes. Небольшое улучешние, которое сделае ваш код надежне и позволит компилятору не дать вам сделать ошибки. Фича экпериментальная и пока работает только на Kotlin/JVM
📺 Видео обзор
📺 Видео обзор
🔥13👍6😁1🤔1
🎉 Kotlin Multiplatform Mobile (KMM) вышел в Beta
Что значит Beta для KMM:
👉 Технология практически готова и ее безопаснос использовать
👉 Количество изменение, требующих миграции, будет минимизровано и авторы стараются такого не допускать
Время пробовать и интегрировать технологию, ведь она уже много где есть в продакшене!
Что значит Beta для KMM:
👉 Технология практически готова и ее безопаснос использовать
👉 Количество изменение, требующих миграции, будет минимизровано и авторы стараются такого не допускать
Время пробовать и интегрировать технологию, ведь она уже много где есть в продакшене!
🔥31🎉12😁2👍1
Forwarded from Android Broadcast (Кирилл Розов)
🔥 Google анонсировал экспериментальное превью мультиплатформенных Jetpack библиотек на KMM. Давно уже шло что везде чистый Kotlin, а переносимость Jetpack Compose на другие платформы то и Jetpack либы тоже в этом помогут.
Сейчас мультиплатформенным являются Collections и DataStore. Почему? Да они прекрасно кладутся на функционал который есть на разных платформах, а под капотом используется платформенная реализация или из языка под капотом (например Java Collections)]
Делитесь мнением по поводу официальной поддержки KMM в Android
#kmm #jetpack
Сейчас мультиплатформенным являются Collections и DataStore. Почему? Да они прекрасно кладутся на функционал который есть на разных платформах, а под капотом используется платформенная реализация или из языка под капотом (например Java Collections)]
Делитесь мнением по поводу официальной поддержки KMM в Android
#kmm #jetpack
🔥26👍7🤔5😁2
Forwarded from Android Broadcast (Кирилл Розов)
📺 Новости мобильной разработки (24 мин)
В свежем выпуске разбираю
👉 анонс KMM Beta
🔥 Jetpack Multiplatform на Kotlin
👉 новый формат Android Dev Summit
👉 Jetpack Compose for Android TV
👉 новые Google Pixel устройства
🎧 Подкаст версия
📺 Версия на YouTube
#AndroidBroadcast
В свежем выпуске разбираю
👉 анонс KMM Beta
🔥 Jetpack Multiplatform на Kotlin
👉 новый формат Android Dev Summit
👉 Jetpack Compose for Android TV
👉 новые Google Pixel устройства
🎧 Подкаст версия
📺 Версия на YouTube
#AndroidBroadcast
👍11🤯2🤔1
Forwarded from Android Broadcast (Кирилл Розов)
Договорился на интервью про KMM Beta, состояние технологии и ее будущие. Отвечать будут представитель JetBrains. Задавайте свои вопросы в комментариях
🔥62🤔2
Вышел Compose Multiplatform (JetBrains) 1.2.0
👉 Поддержка нескольких версий Kotlin для разных платформ
👉 В Gradle KTS теперь больше не надо импортировать import org.jetbrains.compose.compose
👉 Поддержка Kotlin 1.7.20
👉 Возможность использовать разные плагины компилятора Compose
👉 Сборки теперь содержат конфиги для ProGuard
👉 Много улучшения для Compose/Desktop
📄 Документация по упаковки приложения с помощью Conveyor
🛠️ Исправление багов
👉 Поддержка нескольких версий Kotlin для разных платформ
👉 В Gradle KTS теперь больше не надо импортировать import org.jetbrains.compose.compose
👉 Поддержка Kotlin 1.7.20
👉 Возможность использовать разные плагины компилятора Compose
👉 Сборки теперь содержат конфиги для ProGuard
👉 Много улучшения для Compose/Desktop
📄 Документация по упаковки приложения с помощью Conveyor
🛠️ Исправление багов
🔥21👍6🤔1
KStore - простая мультиплатформенная библиотека для сохранения и восстановления объектов на/с диска
Исходники на GitHub
#kmp
Исходники на GitHub
#kmp
🔥17👍2😁1
Вышла первая стабильная версия Odyssey - библиотеки для навигации в Compose Multiplatform. Поддержка Compose 1.2.0 и современного набора потребностей разработчиков. Автор - Алексей Гладков
#compose #kmp
#compose #kmp
🔥38😁13👍8🤔2
TouchLab представили KMMBridge - набор Gradle инструментов для помощи в публикации и использования pre-build KMM Xcode Framework бинарников
👉 Документация
👉 Исходный код на GitHub
#kmm #gradle
👉 Документация
👉 Исходный код на GitHub
#kmm #gradle
🔥5🤔2
В статье рассказывается подход как можно с помощью sealed классов отказаться от null. Как вам?
🤯32👍8😁6❤1
data - непустой List из строк. Какой код не сработает?
Anonymous Poll
25%
data.map(::Value)
7%
data.map(::toValue)
7%
data.map(Utils::toValue)
40%
data.map(Util::toValue)
21%
Все варианты рабочие
🤔10👍7👌3🤯1
Kotlin Multiplatform Broadcast
data - непустой List из строк. Какой код не сработает?
Правильный ответ data.map (Util::toValue) . Код для задания был постом выше перед опросом. Подробности в комментариях
🎉33🔥9👍5🤯4
В data object в отличие от object будет переопределены:
Final Results
6%
toString() + equals()
10%
equals() + hashCode()
48%
toString() + equals() + hasCode()
37%
toString()
👍28🤯12🔥2
Kotlin Multiplatform Broadcast
В data object в отличие от object будет переопределены:
Правильный ответ - toString() . Подробности и обсуждение в комментариях
Важно - это фича в экспериментальном статусе и будет введена в Kotlin 1.8
Важно - это фича в экспериментальном статусе и будет введена в Kotlin 1.8
👍4🤔3
Вышел Realm Kotlin 1.4.0
👉 Kotlin 1.7.20
👉 Миграция на новую модель памяти Kotlin/Native
👉 library-sync теперь поддерживает Apple Silicon
👉 Исправление багов
👉 Kotlin 1.7.20
👉 Миграция на новую модель памяти Kotlin/Native
👉 library-sync теперь поддерживает Apple Silicon
👉 Исправление багов
👍14🤔2