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
К релизу начинают готовить Kotlin 1.9.0. Ha GitHub появилась первая бета будущей версии языка

@kotlin_broadcast #kotlin
🔥502👍2👎2
Forwarded from Android Broadcast (Кирилл Розов)
📺 Ускоряем написание кода (15 мин)

Узнайте, как использовать тулинг, генерацию кода и машинное обучение, чтобы писать меньше кода! Java Annotation Processing, KAPT, IDEA-плагины, live-template-ы и многое другое

0:00 Вступление
0:44 Annotation Processing
2:46 Kotlin Symbol Processing
4:09 AvitoTech
4:37 Генерация кода из Gradle
5:08 Плагины Kotlin компилятора
6:20 Возможности IDE
7:50 Плагины IDE
8:43 Шаблоны Android Studio
9:18 Geminio
11:13 AI помощники
14:00 Заключение

#AndroidBroadcast #разбор
👍21🔥1🤯1🤬1
Forwarded from Android Broadcast (Кирилл Розов)
Разбор когда надо использовать derivedStateOf { ... } для создания State на основе друго State. В статье рассматривается пример с разблокировкой кнопки когда пользователь промотал список до конца

#compose
👍16👎121
Вышел Detekt 1.23.0
👉 Плагин компилятора переехал в основное репо. Он позволяет подключать проверки не через Gradle плагин, а как часть процесса компиляции кода
👉 25 новых правил (включает правила из KtLint 0.49.1)
👉 Поддержали Gradle Worker API, что ускорит проверку больших проектов
🛠️ Исправление багов

Начата разработка версии 2.0. Следить за прогрессом тут

#tooling
👍25👎1
Вышел Coil 2.4.0: улучшение API и поддержки Compose, а также исправление багов
👍19👎2
Validate Fields Like a Pro With Kotlin Annotation Classes (7 мин)

Интересный подход написания валидатора Kotlin Property на основе annotation class. Они используются как указание правила, а вот утилиту проверки написали на рефлексии, но никто не мешает потом переписать его как плагин компилятора или на основе KSP
👎14👍5
Forwarded from Mobile Developer (Алексей Гладков)
Ksoup: библиотека для парсинга html для kotlin multiplatform
https://github.com/MohamedRejeb/Ksoup

Парень, который написал pokedex на compose multiplatform и сделал компонент для редактирования текста, продолжает радовать нас библиотеками

Кому нужно парсить html очень полезная штука
👍34👎4❤‍🔥3
Статья (6 мин) в которой разбираются несколько кейсов использования Kotlin Coroutines, которые могут работать не так как вы ожидаете:
👉 MutableSharedFlow.tryEmit()
👉 Вызов Flow.collect() несколько раз в одной корутине
👉 Особенности запуска и отмены корутины
👉 Особенности проектирования транзакционного API

#coroutines
🔥34👍7👎3
Forwarded from Mobile Developer (Алексей Гладков)
Kamel. Compose Multiplatform библиотека для картинок
https://github.com/Kamel-Media/Kamel

Хочу поделиться библиотекой, которую сам использую для картинок в Compose Multiplatform

👉 Поддержка всех платформ
👉 Загрузка по URL
👉 Загрузка локально
👉 Callback загрузки

Пишите насколько полезна вам эта рубрика
👍37👎2
В AOSP занялись созданию SQLite API, чтобы сделать его удобным для KMM. За основу берут SQLite3 C/C++ API

#android #kmp
👍5910🔥4👎2
Статья с разбором Coroutines Flow. В статье показывается что сам концепт не такой сложный и создать свой аналог на основе suspend функций не так сложно как кажется

#coroutines
👍29👎103
В Kotlin 2.0 будет по умолчанию работать новый компилятор под названием K2. В статье (6 мин) разбирают
👉 основные отличия K2 от текущего (K1) компилятора
👉 различие работы их Frontend и Backend части (не путать с типами разработки)
👉 рассказывают что такое IR (Intermediate Representation)

#kotlin
👍39👎6
KIM (Kotlin Image Metadata) - Kotlin Multiplatform библиотека для чтения/записи метаданных для картинок (JPG, PNG, TIFF)

#kmp
🔥16👍4👎2
Подборка библиотек с поддержкой Kotlin Multiplatform. Также будет полезно еще и Awesome KMM

#kmm #kmp
👍15👎21
Какой из этих аннотаций нет в Kotlin JVM ?
Anonymous Quiz
19%
👍17🏆9
Forwarded from Kotlin
Kotlin с нуля

Урок 0: Ставим среду разработки и запускаем проект
Урок 1: Что такое переменные и их типы, val и var
Урок 2: Арифметические операции, остаток от деления
Урок 3: Интерполяция (шаблонные строки). Конкатенация
Урок 4: Операторы сравнения (отношения), логические операторы
Урок 5: Условные операторы if else when. Операции ветвления
Урок 6: Циклы while, do-while. Обратный отсчет с Thread.sleep()
Урок 7: Цикл for, диапазоны (интервалы). break, continue, return
Урок 8: Массивы. Типы, размер, индекс массива. Перебор через for
Урок 9: Коллекции: списки (List). Функции для работы с коллекциями
Урок 10: Функции (методы), тип возвращаемого значения, return
Урок 11: ООП. Классы и свойства. Создание объектов (экземпляров класса)
Урок 12: Конструкторы (primary, secondary). Блоки инициализации init.
Урок 13: Null Safety – операторы ?. !!, NullPointerException (NPE)
Урок 14: ООП. Наследование. open class. Переопределение (override)
Урок 15: Интерфейсы, абстрактные классы. Имплементация
Урок 16: ООП. Инкапсуляция. Модификаторы доступа
Урок 17: Сеттеры и Геттеры, field, как их кастомизировать
Урок 18: ООП. Полиморфизм, 3 типа (Ad hoc, Subtyping, Parametric)
Урок 19: ENUM (классы перечислений), TODO() и тип Nothing
Урок 20: Лямбда-функции (лямбды), анонимные функции
Урок 21: Extensions (функции-расширения, экстеншены)
Урок 22: Data class (дата классы) copy, toString, equals, hashCode
Урок 23: Теория разработки программ. Создание телеграм бота // Практика

Все видео доступны на youtube

@kotlin_lib
👍61👎7😐2