🎉 Вышел Kotlin 2.0.20 c исправлениями багов. Что нового:
👩💻 copy() функция в data классах теперь имеет такую же видимость как и основной конструктор
👩💻 Удаление Context Receiver (будет заменена на context params)
👩💻 Поддержка Gradle 8.6-8.8
Kotlin/Native
👩💻 Экспериментальная поддержка concurrent marking в сборщике мусора. Ускоряет работу
👩💻 Удалён Bitcode embedding
👩💻 С помощью инструментов XCode теперь можно мониторить производительность сборщика мусора из K/N
👩💻 Убрали ограничение на запуск suspend функций только в главном поток из Swift и Objective-C. Теперь можно вызвать на любом потоке
Kotlin/WASM
👩💻 Больше информации об ошибках при экспорте
Kotlin/JS
👩💻 Поддержка статики в JS
👩💻 Создание коллекций Kotlin из JS
#kotlin
Kotlin/Native
Kotlin/WASM
Kotlin/JS
#kotlin
Please open Telegram to view this post
VIEW IN TELEGRAM
👍31🔥15👎1
Forwarded from Android Broadcast
Media is too big
VIEW IN TELEGRAM
Новый формат собеседований под угрозой ‼️‼️‼️ Я конечно преувеличил и привлек ваше внимание. Очень важно чтобы я мог получать от вас вопросы а не просто делал постанову. Задайте свои вопрос по Kotlin что вас интересуют в https://forms.gle/D1GYYhZg7qoaqYZP8 чтобы в формате собеседования получить на них ответы
#AndroidBroadcast #собес
#AndroidBroadcast #собес
👍27👎14🤬10🔥3
Большая статья "Kotlin Coroutines. От А до Я" (28м)
Что внутри
👉 Шпаргалка по корутинам
👉 Зачем нужны корутины?
👉 Suspend в Котлин
👉 Библиотека kotlinx.corourines
👉 Три способа войти в корутинный мир. runBlocking, CoroutineScope и suspend main
👉 Область видимости корутины. CoroutineScope и GlobalScope
👉 CoroutineContext
👉 Job и Deferred
👉 Запуск корутины
👉 Dispatchers. Основные виды диспетчеров и их применения
👉 Способы обработок ошибок
👉 Отмена корутин
👉 Создание своего пользовательского CoroutineScope
#coroutines
Что внутри
👉 Шпаргалка по корутинам
👉 Зачем нужны корутины?
👉 Suspend в Котлин
👉 Библиотека kotlinx.corourines
👉 Три способа войти в корутинный мир. runBlocking, CoroutineScope и suspend main
👉 Область видимости корутины. CoroutineScope и GlobalScope
👉 CoroutineContext
👉 Job и Deferred
👉 Запуск корутины
👉 Dispatchers. Основные виды диспетчеров и их применения
👉 Способы обработок ошибок
👉 Отмена корутин
👉 Создание своего пользовательского CoroutineScope
#coroutines
🔥54👍18❤4
// build.gradle.kts
kotlin {
// Приведет к ошибке компиляции при нарушение
explicitApi = ExplicitApiMode.Strict
// Будет компилироваться, но в логах будет предупреждение
explicitApi = ExplicitApiMode.Warning
}
Очень классная и полезная фича для разработчиков библиотек и в многомодульной архитектуре Explicit API Mode в Kotlin. Включение этого флага приводит к
👉 Указание модификатора видимости становится обязательным, даже явно прописать public
👉 Все функции и свойства должны явно объявить возвращаемый тип, чтобы не полагаться на систему вывода типов
Я его использую потому что предпочитаю делать функции public в очень редких случаях, а обычно они internal и private. public только для того API что должно использоваться вне Gradle модуля/библиотеки.
#kotlin
2👍62👎4❤2🔥1
🤔34👎19👍5❤1
Please open Telegram to view this post
VIEW IN TELEGRAM
🤯20👍13🫡4👎3
👎22🔥15🤯7🤔3
Вышел KMMBridge 1.0 - утилита для публикации iOS XCFamework бинарники из KMP проекта. Релиз 1.0 сфокусировался на работе с Swift Package Manager (SPM)
#ios #spm #kmp
#ios #spm #kmp
🤯7👍4👎2🤬2
This media is not supported in your browser
VIEW IN TELEGRAM
Field Spottr - статья как автор сделал приложение с использованием KMP и Compose для Android и iOS. Опубликовано в Google Play и App Store
👉 Исходники на GitHub
#пример #android #ios #compose #kmp
👉 Исходники на GitHub
#пример #android #ios #compose #kmp
🔥20👎6🤯2👌2
Media is too big
VIEW IN TELEGRAM
Kopy - Gradle плагин который поможет делать копии вложенных экземпляров полей data классов. По умолчанию создаётся копия ссылки.
🤔32👍22🤯6👎2
Forwarded from Android Broadcast
Media is too big
VIEW IN TELEGRAM
1:16 Куда можно класть Kotlin файлы
3:39 Как разделить код по Gradle модулям
6:23 Несколько папок с исходным кодом
7:42 Пакеты с кодом
14:03 Выделение кода в AAR/JAR библиотеки
15:37 Заключение
Смотрите видео на разных площадках:
#AndroidBroadcast #видео #kotlin
Please open Telegram to view this post
VIEW IN TELEGRAM
👍29👎7🔥5
WebAssembly Garbage Collection (WasmGC) включили по умолчанию в WebKit - движок который лежит в основе Safari. Это важный шаг в поддержке Kotlin WASM и Compose Multiplatform для Web. PR с изменениями
Важно когда это изменение будет в Safari
Важно когда это изменение будет в Safari
👍27🔥7👎2
Писали ли вы что-то с генерацией Kotlin кода (Annotation Processing, KSP, KAPT, Gradle плагин) ?
Anonymous Poll
34%
Да
60%
Нет
6%
Не пишу код/Не участвую в опросе
👍5👎1