Jaewoong Eum опублікував плагін Compose Stability Analyzer для Android Studio, який в реальному часі показує стабільність параметрів Composable-функцій. Раніше для цього треба було запускати генерацію звіту, відкривати текстовий файл з результатами і вручну все перевіряти.
Тепер, зі встановленим плагіном, навпроти кожного параметру відразу видно кольоровий індикатор стабільності.
Плагін доступний в Marketplace, можна встановити через Android Studio: Settings -> Plugins -> Marketplace -> Compose Stability Analyzer -> Install.
Посилання на GitHub: https://github.com/skydoves/compose-stability-analyzer
Посилання на плагін: https://plugins.jetbrains.com/plugin/28767-compose-stability-analyzer
Тепер, зі встановленим плагіном, навпроти кожного параметру відразу видно кольоровий індикатор стабільності.
Плагін доступний в Marketplace, можна встановити через Android Studio: Settings -> Plugins -> Marketplace -> Compose Stability Analyzer -> Install.
Посилання на GitHub: https://github.com/skydoves/compose-stability-analyzer
Посилання на плагін: https://plugins.jetbrains.com/plugin/28767-compose-stability-analyzer
❤28
This media is not supported in your browser
VIEW IN TELEGRAM
Всім гарної п'ятниці 😄 Не плануйте релізів на сьогодні.
❤22😁9👏2🤬1🤝1
This media is not supported in your browser
VIEW IN TELEGRAM
Невелика фішка при наборі коду в Android Studio / IntelliJ - це швидкий перехід між словами: Ctrl + ← та Ctrl + → (в MacOS - Option замість Ctrl). Але додатково є також альтернативний варіант - переміщення курсору всередині слова. Для цього можна включити опцію Use CamelHumps words в Settings -> Editor -> General -> Smart Keys. Наочна різниця показана в прикріпленій анімації.
👍26🤯4🥰2❤1
Що робити, якщо ви випадково видалили код, і при цьому в проекті не використовується Git, і ви ще й закрили Android Studio та пішли відпочивати на вихідні? 😅
Для таких випадків, всі продукти на базі IntelliJ Platform, в тому числі і Android Studio, мають вбудований інструмент Local History. Достатньо натиснути правою кнопкою миші на каталог / пакет / модуль, в якому був видалений файл, потім вибрати пункт Local History -> Show History. В результаті з'явиться вікно з можливістю знайти видалений файл та відновити його командою Revert Selected and Later Changes.
Для таких випадків, всі продукти на базі IntelliJ Platform, в тому числі і Android Studio, мають вбудований інструмент Local History. Достатньо натиснути правою кнопкою миші на каталог / пакет / модуль, в якому був видалений файл, потім вибрати пункт Local History -> Show History. В результаті з'явиться вікно з можливістю знайти видалений файл та відновити його командою Revert Selected and Later Changes.
❤40
This media is not supported in your browser
VIEW IN TELEGRAM
Багато хто з вас чув про GraphicsLayer в Jetpack Compose. Він дозволяє не тільки оптимізувати відображення графіки, а й реалізувати цікаві ефекти. Наприклад, в статті за посиланням нижче - наведено приклад CRT Screen Effect з готовим кодом:
https://www.sinasamaki.com/creating-a-crt-screen-effect-in-jetpack-compose/
https://www.sinasamaki.com/creating-a-crt-screen-effect-in-jetpack-compose/
❤13🔥6😱2
This media is not supported in your browser
VIEW IN TELEGRAM
Ще одна фішка Android Studio - це офіційна підтримка CPDD (Copy-Paste-Driven-Development 😄). Ви можете копіювати та вставляти код декілька разів підряд. Наприклад: виділяєте та копіюєте три різні фрагменти коду за допомогою комбінації клавіш Ctrl+C. Потім, в іншому місці - вставляєте їх в тому ж самому порядку, натиснувши три рази підряд комбінацію Ctrl+Shift+V, цифра 3 (якщо зкопіювали N фрагментів - то тоді натискайте відповідну цифру N). Також, можна вставляти зкопійовані фрагменти в інвертованому порядку: Ctrl+Shift+V, 1, Ctrl+Shift+V, 2, Ctrl+Shift+V, 3, ну або вручну вибирати потрібний фрагмент зі списку.
❤22🤬1
Сьогодні поділюсь посиланням на великий (дуже) лонг-рід про Kotlin Coroutines. Матеріал настільки обʼємний, що навіть браузер починає глючити при скролі 😄 Але зате в ньому є максимально детальне пояснення з прикладами, як взагалі працюють корутини в мові Kotlin та які механізми закладені всередині. В кінці статті також є пояснення більш приземлених речей - Job Cancellation, Structured Concurrency, Supervisor Scope і т.д.
https://proandroiddev.com/inside-kotlin-coroutines-state-machines-continuations-and-structured-concurrency-b8d3d4e48e62
https://proandroiddev.com/inside-kotlin-coroutines-state-machines-continuations-and-structured-concurrency-b8d3d4e48e62
Medium
Inside Kotlin Coroutines: State Machines, Continuations, and Structured Concurrency.
A deep dive into the Finite-State-Machine (FSM) transformation that powers Kotlin Coroutines. Compiler Mechanics, and Structured…
🔥23👍14❤5
В жовтні відбувся перший stable-реліз (v1.0.0) бібліотеки JankStats, яка дозволяє моніторити продуктивність кадрів відрисовки екрану. Наприклад - для складних інтерфейсів або анімацій. Особливість бібліотеки в тому, що ви можете включати до неї різні дані зі стейту вашого android-проекту (чимось схоже на кастомну аналітику, тільки для моніторингу продуктивності інтерфейсу). Бібліотека працює з Android Views, Jetpack Compose, і є офіційним інструментом від Google. Підключається одним рядком, без плагінів:
Документація на Android Developers: https://developer.android.com/topic/performance/jankstats
Приклад використання на GitHub: https://github.com/android/performance-samples/tree/main/JankStatsSample
implementation("androidx.metrics:metrics-performance:1.0.0")Документація на Android Developers: https://developer.android.com/topic/performance/jankstats
Приклад використання на GitHub: https://github.com/android/performance-samples/tree/main/JankStatsSample
Android Developers
JankStats Library | App quality | Android Developers
The JankStats library helps track and analyze performance issues in Android applications by reporting on application frames that take too long to render, offering capabilities like jank heuristics and UI state context.
🔥16❤1
Сьогодні варто познайомитись з моєю новою публікацією на Medium 😀 Там ви дізнаєтесь про те, як можна застосувати інтерфейси та механізм делегування в Kotlin для мапінгу даних та для спрощення роботи зі State-класами.
https://medium.com/@rom.andrushchenko/simplify-mappings-with-kotlin-interfaces-2488125d2ba9
https://medium.com/@rom.andrushchenko/simplify-mappings-with-kotlin-interfaces-2488125d2ba9
Medium
How to simplify State and Entity mappings with Kotlin interfaces, delegation and covariant generics
While data classes are the go-to solution, there is a powerful yet underutilized approach that can reduce boilerplate in your code.
🔥35❤2🤯1
Раптово-неочікувано вчора вийшла стабільна версія Jetpack Navigation v3. Пора знову мігрувати свої проекти 😄
https://android-developers.googleblog.com/2025/11/jetpack-navigation-3-is-stable.html
https://android-developers.googleblog.com/2025/11/jetpack-navigation-3-is-stable.html
Android Developers Blog
Jetpack Navigation 3 is stable
News and insights on the Android platform, developer tools, and events.
🤣6🤨4❤1🥰1
Вчора Anthropic релізнули нову модель Claude Opus 4.5. Обіцяють, що її результати в сфері Software Engineering найкращі серед інших моделей.
https://www.anthropic.com/news/claude-opus-4-5
https://www.anthropic.com/news/claude-opus-4-5
❤8
Сьогодні о 18-00 буде стрім з розбором коду:
https://youtube.com/live/AiPqrdHXYCQ
https://youtube.com/live/AiPqrdHXYCQ
YouTube
Розбір коду Android-проекту #11 / Kotlin, Android
Розбір коду Android-бібліотеки в прямому ефірі, відповіді на запитання і т.д.
Підтримати канал: https://uandcode.com/donate
Стати спонсором: https://uandcode.com/join
Список контенту для спонсорів: https://uandcode.com/paid-content/
Telegram-канал: htt…
Підтримати канал: https://uandcode.com/donate
Стати спонсором: https://uandcode.com/join
Список контенту для спонсорів: https://uandcode.com/paid-content/
Telegram-канал: htt…
❤7👍1
Хто сидить на Kotlin 1.9? 😁 Тут вчора вийшов стабільний реліз 2.3, з підтримкою Java 25 та деякими експериментальними фічами, серед яких:
- Explicit Backing Fields (тепер не треба писати пари MutableStateFlow / StateFlow)
- Unused Return Value Checker (компілятор буде попереджувати, якщо забули написати return для повернення результату з функції)
Повний список тут:
https://kotlinlang.org/docs/whatsnew23.html
Експериментальні фічі включаються в build.gradle:
- Explicit Backing Fields (тепер не треба писати пари MutableStateFlow / StateFlow)
- Unused Return Value Checker (компілятор буде попереджувати, якщо забули написати return для повернення результату з функції)
Повний список тут:
https://kotlinlang.org/docs/whatsnew23.html
Експериментальні фічі включаються в build.gradle:
kotlin {
compilerOptions {
freeCompilerArgs.add("-Xreturn-value-checker=check")
freeCompilerArgs.add("-Xexplicit-backing-fields")
}
}Kotlin Help
What's new in Kotlin 2.3.0 | Kotlin
Read the Kotlin 2.3.0 release notes covering new language features, updates to Kotlin Multiplatform, JVM, Native, JS, and Wasm, and build tool support for Gradle and Maven.
❤9🫡5🔥1
Сьогодні опублікував відео про Scope-функції: let, run (x2), also, apply, with, а також takeIf. Відео є частиною плейліста по базовим основам Kotlin, але конкретно ця тема може бути цікавішою за інші, тому також залишу посилання тут: https://youtu.be/OFSzQjURk7Q
YouTube
Scope-функції let, apply, also, run, with (а також takeIf) - Основи програмування Kotlin
Розглядаємо Scope-функції в мові Kotlin: let, apply, also, run (в 2х варіантах) та with. Додатково розглядаємо функцію takeIf.
Підтримати канал, ставши спонсором: https://uandcode.com/join
Контент для спонсорів: https://uandcode.com/paid-content/
Telegram…
Підтримати канал, ставши спонсором: https://uandcode.com/join
Контент для спонсорів: https://uandcode.com/paid-content/
Telegram…
👍17❤7🔥3🤯2
Новорічний стрім, останній цього року, буде сьогодні орієнтовно о 16-30. Час може змінитись, у разі відключень світла. Тематика - питання/відповіді та проходження фінальних місій Wings of Liberty 😁
https://www.youtube.com/watch?v=0NkzTY_b4Oc
https://www.twitch.tv/randrushchenko
https://www.youtube.com/watch?v=0NkzTY_b4Oc
https://www.twitch.tv/randrushchenko
YouTube
Новорічний стрім 2025 - Запитання/відповіді та проходження фінальних місій Wings of Liberty :)
Останній стрім цього року :) Відповідаю на запитання Android / Kotlin / Java / IT, а також проходжу фінальні місії кампанії Wings of Liberty.
Підтримати канал: https://uandcode.com/donate
Стати спонсором: https://uandcode.com/join
Список контенту для спонсорів:…
Підтримати канал: https://uandcode.com/donate
Стати спонсором: https://uandcode.com/join
Список контенту для спонсорів:…
🔥8❤1
Вітаю з Новим 2026-м роком 🎄 Cподіваюсь, всі добре відпочили і тепер готові до нових звершень 🔥
А тим часом на каналі перерв немає, і навіть навпаки. За останні пару тижнів підготував декілька відео про рекурсію та рекурсивні функції в рамках плейліста по основам програмування Kotlin:
1) Основи рекурсії - https://youtu.be/48QS0hfeOk4
2) Більш детальний розбір, як працює рекурсія - https://youtu.be/QrJ4WYD1aqE
3) І додатково - бонусне доповнення: Tailrec-функції / хвостова рекурсія:
- На Patreon: https://www.patreon.com/posts/146855411
- На BuyMeACoffee: https://buymeacoffee.com/romychab/kotlin-48-tailrec-functions
- На YouTube: https://youtu.be/UvrxfSc6QFw
Тема рекурсії - це як головоломка, якраз після свят буде чим розім'яти мозок 😄
А тим часом на каналі перерв немає, і навіть навпаки. За останні пару тижнів підготував декілька відео про рекурсію та рекурсивні функції в рамках плейліста по основам програмування Kotlin:
1) Основи рекурсії - https://youtu.be/48QS0hfeOk4
2) Більш детальний розбір, як працює рекурсія - https://youtu.be/QrJ4WYD1aqE
3) І додатково - бонусне доповнення: Tailrec-функції / хвостова рекурсія:
- На Patreon: https://www.patreon.com/posts/146855411
- На BuyMeACoffee: https://buymeacoffee.com/romychab/kotlin-48-tailrec-functions
- На YouTube: https://youtu.be/UvrxfSc6QFw
Тема рекурсії - це як головоломка, якраз після свят буде чим розім'яти мозок 😄
YouTube
Рекурсія, рекурсивні функції (частина 1) - Основи програмування Kotlin
Поняття рекурсії. Рекурсія в програмуванні. Рекурсивні функції в мові Kotlin.
Підтримати канал, ставши спонсором: https://uandcode.com/join
Контент для спонсорів: https://uandcode.com/paid-content/
Telegram-канал: https://uandcode.com/telegram
Telegram…
Підтримати канал, ставши спонсором: https://uandcode.com/join
Контент для спонсорів: https://uandcode.com/paid-content/
Telegram-канал: https://uandcode.com/telegram
Telegram…
❤12👍10🎉2🔥1
Сьогодні планую запустити стрім:
https://www.youtube.com/watch?v=PTVjrwEcDD8
Тематика: Ollama, тест локальної LLM-ки Llama 3.1. Задача мінімум - написати програму-чат на мові Kotlin. Задача максимум - підключити кастомні команди.
Орієнтовний час сьогодні о 20-30, але враховуючи аварійні відключення - можливо доведеться перенести на інший день.
https://www.youtube.com/watch?v=PTVjrwEcDD8
Тематика: Ollama, тест локальної LLM-ки Llama 3.1. Задача мінімум - написати програму-чат на мові Kotlin. Задача максимум - підключити кастомні команди.
Орієнтовний час сьогодні о 20-30, але враховуючи аварійні відключення - можливо доведеться перенести на інший день.
YouTube
ChatGPT не потрібен 😂 Ollama, локальні LLM-моделі (частина 1) - Основи програмування Kotlin
Пишемо програму-чат на мові Kotlin, яка взаємодіє з локальною LLM-моделлю по протоколу HTTP, передаючи повідомлення у форматі JSON.
Підтримати канал: https://uandcode.com/donate
Стати спонсором: https://uandcode.com/join
Список контенту для спонсорів: h…
Підтримати канал: https://uandcode.com/donate
Стати спонсором: https://uandcode.com/join
Список контенту для спонсорів: h…
👍7❤3
Стрім перервався із-за аварійних відключень світла. В цілому, базову частину ми встигли зробити 🙂 А Tool Calling тоді розберемо наступного разу.
⚡15❤1🙈1
А ось і друга частина про Ollama / Local LLM - https://youtu.be/w_SGKCo6yt0
Приклад виклику Kotlin-функцій через LLM на прикладі доступу до файлової системи - читання файлів в каталозі та створення текстових файлів.
Приклад виклику Kotlin-функцій через LLM на прикладі доступу до файлової системи - читання файлів в каталозі та створення текстових файлів.
YouTube
Локальні LLM-моделі: Tool Calling (частина 2) - Основи програмування Kotlin
Виклик будь-яких кастомних функцій в мові Kotlin через локальну LLM-модель. Для прикладу, пишемо інтеграцію LLM-моделі з файловою системою. Реалізація двох простих команд - відображення файлів користувача та створення нових текстових файлів.
Підтримати канал…
Підтримати канал…
🔥6❤2