ANdroidsUA
525 subscribers
12 photos
3 videos
195 links
Телеграм-канал для Android-розробників та початківців. YouTube: youtube.com/c/RomanAndrushchenko
Група для дискусій: https://uandcode.com/telegram/chat
Download Telegram
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🥰21
Що робити, якщо ви випадково видалили код, і при цьому в проекті не використовується Git, і ви ще й закрили Android Studio та пішли відпочивати на вихідні? 😅

Для таких випадків, всі продукти на базі 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/
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
🔥23👍145
В жовтні відбувся перший stable-реліз (v1.0.0) бібліотеки JankStats, яка дозволяє моніторити продуктивність кадрів відрисовки екрану. Наприклад - для складних інтерфейсів або анімацій. Особливість бібліотеки в тому, що ви можете включати до неї різні дані зі стейту вашого android-проекту (чимось схоже на кастомну аналітику, тільки для моніторингу продуктивності інтерфейсу). Бібліотека працює з Android Views, Jetpack Compose, і є офіційним інструментом від Google. Підключається одним рядком, без плагінів:
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
🔥161
Коротко про значення чисел в версіях будь-яких програм 😁
😁23🤣63🤯1
Сьогодні варто познайомитись з моєю новою публікацією на Medium 😀 Там ви дізнаєтесь про те, як можна застосувати інтерфейси та механізм делегування в Kotlin для мапінгу даних та для спрощення роботи зі State-класами.

https://medium.com/@rom.andrushchenko/simplify-mappings-with-kotlin-interfaces-2488125d2ba9
🔥352🤯1
Раптово-неочікувано вчора вийшла стабільна версія Jetpack Navigation v3. Пора знову мігрувати свої проекти 😄
https://android-developers.googleblog.com/2025/11/jetpack-navigation-3-is-stable.html
🤣6🤨41🥰1
Вчора Anthropic релізнули нову модель Claude Opus 4.5. Обіцяють, що її результати в сфері Software Engineering найкращі серед інших моделей.
https://www.anthropic.com/news/claude-opus-4-5
8
Хто сидить на 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:
kotlin {
compilerOptions {
freeCompilerArgs.add("-Xreturn-value-checker=check")
freeCompilerArgs.add("-Xexplicit-backing-fields")
}
}
9🫡5🔥1
Сьогодні опублікував відео про Scope-функції: let, run (x2), also, apply, with, а також takeIf. Відео є частиною плейліста по базовим основам Kotlin, але конкретно ця тема може бути цікавішою за інші, тому також залишу посилання тут: https://youtu.be/OFSzQjURk7Q
👍177🔥3🤯2
Вітаю з Новим 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
Тема рекурсії - це як головоломка, якраз після свят буде чим розім'яти мозок 😄
12👍10🎉2🔥1
Сьогодні планую запустити стрім:
https://www.youtube.com/watch?v=PTVjrwEcDD8
Тематика: Ollama, тест локальної LLM-ки Llama 3.1. Задача мінімум - написати програму-чат на мові Kotlin. Задача максимум - підключити кастомні команди.

Орієнтовний час сьогодні о 20-30, але враховуючи аварійні відключення - можливо доведеться перенести на інший день.
👍73
Стрім перервався із-за аварійних відключень світла. В цілому, базову частину ми встигли зробити 🙂 А Tool Calling тоді розберемо наступного разу.
151🙈1
Я тут подумав та вирішив, що можна всі відео по основам ООП об'єднати в окремий плейліст 😎 Початково вони є частиною загального курсу по основам програмування, але нехай будуть окремим плейлістом також:
https://www.youtube.com/playlist?list=PLRmiL0mct8WloS8JyIxTx-IywD3TZi1kd
20🔥6👍2🤯1