В третьей части серии статей о ViewModel Best Practices обсуждают следующие пункты:
- Try not to import Android dependencies in the ViewModels:
- Lazily inject dependencies in the constructor.
#android #viewmodel
https://proandroiddev.com/mastering-android-viewmodels-essential-dos-and-donts-part-3-%EF%B8%8F3%EF%B8%8F%E2%83%A3-1833ce3ddd2b
- Try not to import Android dependencies in the ViewModels:
- Lazily inject dependencies in the constructor.
#android #viewmodel
https://proandroiddev.com/mastering-android-viewmodels-essential-dos-and-donts-part-3-%EF%B8%8F3%EF%B8%8F%E2%83%A3-1833ce3ddd2b
DI фреймворки бывают двух видов: те, что строят свой граф зависимостей во время компиляции (compile time фреймворки), и те, которые делают это уже при выполнении кода (runtime фреймворки).
Kodein — типичный представитель runtime фреймворков. Это значит, что о пропущенной зависимости вы узнаете непосредственно в процессе работы приложения, что может стать неприятным сюрпризом. Только представьте себе: вы пропустили на регрессе какой-то кейс, и у вас краш в продакшене из-за DI! Это же настоящий кошмар!
Но неужели нам придётся отказываться от Kodein или других runtime фреймворков? Что можно сделать, чтобы сделать их более надёжными? Есть ответ! Мы переведём наш DI из разряда runtime проверок в разряд deploy time проверок.
Это третья статья из цикла материалов про Kodein DI для Android
#android #kodein #di
https://habr.com/ru/companies/dododev/articles/807969/
Kodein — типичный представитель runtime фреймворков. Это значит, что о пропущенной зависимости вы узнаете непосредственно в процессе работы приложения, что может стать неприятным сюрпризом. Только представьте себе: вы пропустили на регрессе какой-то кейс, и у вас краш в продакшене из-за DI! Это же настоящий кошмар!
Но неужели нам придётся отказываться от Kodein или других runtime фреймворков? Что можно сделать, чтобы сделать их более надёжными? Есть ответ! Мы переведём наш DI из разряда runtime проверок в разряд deploy time проверок.
Это третья статья из цикла материалов про Kodein DI для Android
#android #kodein #di
https://habr.com/ru/companies/dododev/articles/807969/
Хабр
Kodein DI для Android. Целостность графа и тесты на DI
DI фреймворки бывают двух видов: те, что строят свой граф зависимостей во время компиляции (compile time фреймворки), и те, которые делают это уже при выполнении кода (runtime фреймворки). Kodein —...
Статья о создании своего плагина в Android Studio, часть 1.
Судя по всему, в итоге автор собирается создать плагин для работы с ADB
#android #androidstudio #plugin
https://medium.com/@farhaddeveloper98/write-androidstudio-plugin-step-by-step-part1-create-simple-action-toolwindow-with-custom-ui-01aeefceec94
Судя по всему, в итоге автор собирается создать плагин для работы с ADB
#android #androidstudio #plugin
https://medium.com/@farhaddeveloper98/write-androidstudio-plugin-step-by-step-part1-create-simple-action-toolwindow-with-custom-ui-01aeefceec94
Medium
Write AndroidStudio Plugin Step By Step, Part1: Create Simple Action & ToolWindow with Custom UI.
Crafting Your First Android Studio Plugin
Статья о производительности нового K2 компилятора. Сравнивают сборки на Kotlin 1.9.23 и Kotlin 2.0.0, версия Gradle - 8.5.
#android #kotlin #performance
https://blog.jetbrains.com/kotlin/2024/04/k2-compiler-performance-benchmarks-and-how-to-measure-them-on-your-projects/
#android #kotlin #performance
https://blog.jetbrains.com/kotlin/2024/04/k2-compiler-performance-benchmarks-and-how-to-measure-them-on-your-projects/
The JetBrains Blog
K2 Compiler Performance Benchmarks and How to Measure Them on Your Projects | The Kotlin Blog
Dive into the K2 compiler’s performance benchmarks and learn how to measure performance in your own projects.
Подробная иллюстрированная статья про Kotlin Variance модификаторы In и Out
#kotlin
https://typealias.com/start/kotlin-variance/
#kotlin
https://typealias.com/start/kotlin-variance/
Dave Leeds on Kotlin
Generic Variance
Create subtypes from your parameterized types using Kotlin's generic variance. In this chapter, we'll learn about covariance, contravariance, and how they can be applied in declaration-site variance and use-site variance, based on three simple rules of subtypes.
Стабильная Android Studio Jellyfish
Develop
- Gemini in Android Studio
- Modular login permissions
Debug
- Android Device Streaming
- AQI Crashlytics: Multi-events, keys, and logs
- Embedded Layout Inspector
Optimize
- App Links Assistant: Web associations file support
- Baseline Profile installation
Quality Improvements
- 900+ bugs addressed
- Memory errors down by 40%
IntelliJ Platform Update
- Latest Java 21 feature support
- Run to Cursor inlay option
- More 2023.3 features
#androidstudio
https://android-developers.googleblog.com/2024/04/android-studio-jellyfish-is-stable.html
Develop
- Gemini in Android Studio
- Modular login permissions
Debug
- Android Device Streaming
- AQI Crashlytics: Multi-events, keys, and logs
- Embedded Layout Inspector
Optimize
- App Links Assistant: Web associations file support
- Baseline Profile installation
Quality Improvements
- 900+ bugs addressed
- Memory errors down by 40%
IntelliJ Platform Update
- Latest Java 21 feature support
- Run to Cursor inlay option
- More 2023.3 features
#androidstudio
https://android-developers.googleblog.com/2024/04/android-studio-jellyfish-is-stable.html
This media is not supported in your browser
VIEW IN TELEGRAM
Новый Compose урок по теме - Input.
Разбираемся, как под капотом работают Indication и InteractionSource.
Создаем различные кастомные визуальные индикации клика, в том числе и свой разноцветный Ripple.
#android #course #compose
https://startandroid.ru/ru/courses/compose.html
Разбираемся, как под капотом работают Indication и InteractionSource.
Создаем различные кастомные визуальные индикации клика, в том числе и свой разноцветный Ripple.
#android #course #compose
https://startandroid.ru/ru/courses/compose.html
Android Studio теперь будет иметь два основных релиза.
Первый (platform update) отвечает за обновление IntelliJ IDEA. С точки зрения версии, будут обновлены первые два числа - 202X.X.1
Второй (feature drop) релиз отвечает за фичи, связанные с Android разработкой. Это третье число - 2024.1.X
#androidstudio
https://android-developers.googleblog.com/2024/05/more-frequent-focused-updates-for-android-studio.html
Первый (platform update) отвечает за обновление IntelliJ IDEA. С точки зрения версии, будут обновлены первые два числа - 202X.X.1
Второй (feature drop) релиз отвечает за фичи, связанные с Android разработкой. Это третье число - 2024.1.X
#androidstudio
https://android-developers.googleblog.com/2024/05/more-frequent-focused-updates-for-android-studio.html
Android Developers Blog
More frequent, focused updates for Android Studio
We're ensuring that important updates to the IntelliJ IDEA platform reach the Android Studio Stable channel more frequently for increased quality.
Не за горами выпуск новой версии Kotlin 2.0, основной частью которого является изменение компилятора на K2.
По замерам JB, K2 ускоряет компиляцию на 94% (это не в 16 раз ускорение, а чуть меньше чем в 2). Также он позволит ускорить разработку новых языковых фич и унифицировать все платформы, предоставляя улучшенную архитектуру для мультиплатформенных проектов.
Но мало кто погружался в то, как работает K2, и чем он отличается от K1.
Эта статья более освещает нюансы работы компилятора, которые будут полезны разработчикам для понимания, что же JB улучшают под капотом, и как это работает.
#kotlin #compiler
https://habr.com/ru/companies/kts/articles/813085/
P.S.
Часов через 7 начнется Google I/O 2024
По замерам JB, K2 ускоряет компиляцию на 94% (это не в 16 раз ускорение, а чуть меньше чем в 2). Также он позволит ускорить разработку новых языковых фич и унифицировать все платформы, предоставляя улучшенную архитектуру для мультиплатформенных проектов.
Но мало кто погружался в то, как работает K2, и чем он отличается от K1.
Эта статья более освещает нюансы работы компилятора, которые будут полезны разработчикам для понимания, что же JB улучшают под капотом, и как это работает.
#kotlin #compiler
https://habr.com/ru/companies/kts/articles/813085/
P.S.
Часов через 7 начнется Google I/O 2024
Хабр
Как новый компилятор K2 ускоряет компиляцию Kotlin на 94%
Привет, меня зовут Мялкин Максим, я занимаюсь мобильной разработкой в KTS. Не за горами выпуск новой версии Kotlin 2.0, основной частью которого является изменение компилятора на K2. По замерам...
Несколько ссылок с кратким обзором новинок с Google IO
15 Things to know for Android developers at Google I/O
https://android-developers.googleblog.com/2024/05/15-things-to-know-for-android-developers-google-io-2024.html
Google I/O 2024: What’s new in Android Development Tools
https://android-developers.googleblog.com/2024/05/google-io-2024-whats-new-in-android-development-tools.html
What’s new in Jetpack Compose at I/O ‘24
https://android-developers.googleblog.com/2024/05/whats-new-in-jetpack-compose-at-io-24.html
I/O 2024: What's new in Google Play
https://android-developers.googleblog.com/2024/05/io-24-whats-new-in-google-play.html
Android Support for Kotlin Multiplatform to Share Business Logic Across Mobile, Web, Server, and Desktop Platforms
https://android-developers.googleblog.com/2024/05/android-support-for-kotlin-multiplatform-to-share-business-logic-across-mobile-web-server-desktop.html
Developer Keynote Google I/O 2024: официальная поддержка KMP, развитие Gemini и AI в Андроиде
https://habr.com/ru/companies/kts/articles/814363/
P.S.
Android Studio Bot, кстати, уже работает в ЕС
#android #kotlin #googleio
15 Things to know for Android developers at Google I/O
https://android-developers.googleblog.com/2024/05/15-things-to-know-for-android-developers-google-io-2024.html
Google I/O 2024: What’s new in Android Development Tools
https://android-developers.googleblog.com/2024/05/google-io-2024-whats-new-in-android-development-tools.html
What’s new in Jetpack Compose at I/O ‘24
https://android-developers.googleblog.com/2024/05/whats-new-in-jetpack-compose-at-io-24.html
I/O 2024: What's new in Google Play
https://android-developers.googleblog.com/2024/05/io-24-whats-new-in-google-play.html
Android Support for Kotlin Multiplatform to Share Business Logic Across Mobile, Web, Server, and Desktop Platforms
https://android-developers.googleblog.com/2024/05/android-support-for-kotlin-multiplatform-to-share-business-logic-across-mobile-web-server-desktop.html
Developer Keynote Google I/O 2024: официальная поддержка KMP, развитие Gemini и AI в Андроиде
https://habr.com/ru/companies/kts/articles/814363/
P.S.
Android Studio Bot, кстати, уже работает в ЕС
#android #kotlin #googleio
Android Developers Blog
15 Things to know for Android developers at Google I/O
Take a peak at some of the ways Android is here to support you. Don’t forget to check out the Android track at Google I/O!
Вторая бета Android 15
Today we're releasing the second beta of Android 15, which continues our work to build a platform that helps improve your productivity, minimize battery impact, maximize smooth app performance, give users a premium device experience, protect user privacy and security, and make your app accessible to as many people as possible — all in a vibrant and diverse ecosystem of devices, silicon partners, and carriers.
- Now available on more devices
- Foreground services changes
- Upcoming required support for 16 KB page sizes
- Modernizing Android's GPU access
- The Android ANGLE on Vulkan roadmap
- Modern graphics
- More efficient AV1 software decoding
- Private space
- Selected photos access improvement
- Permission checks on content URIs
- Secured background activity launches
- Safer Intents
- Increased minimum target SDK version from 23 to 24
- Improved large screen multitasking
- Window Insets
- Picture-in-Picture
- Richer Widget Previews with Generated Previews
- Predictive Back
- Set VibrationEffect for notification channels
- New data types for Health Connect
- "Choose how you're addressed" system preference
#android #beta
https://android-developers.googleblog.com/2024/05/the-second-beta-of-android-15.html
Today we're releasing the second beta of Android 15, which continues our work to build a platform that helps improve your productivity, minimize battery impact, maximize smooth app performance, give users a premium device experience, protect user privacy and security, and make your app accessible to as many people as possible — all in a vibrant and diverse ecosystem of devices, silicon partners, and carriers.
- Now available on more devices
- Foreground services changes
- Upcoming required support for 16 KB page sizes
- Modernizing Android's GPU access
- The Android ANGLE on Vulkan roadmap
- Modern graphics
- More efficient AV1 software decoding
- Private space
- Selected photos access improvement
- Permission checks on content URIs
- Secured background activity launches
- Safer Intents
- Increased minimum target SDK version from 23 to 24
- Improved large screen multitasking
- Window Insets
- Picture-in-Picture
- Richer Widget Previews with Generated Previews
- Predictive Back
- Set VibrationEffect for notification channels
- New data types for Health Connect
- "Choose how you're addressed" system preference
#android #beta
https://android-developers.googleblog.com/2024/05/the-second-beta-of-android-15.html
Android Developers Blog
The Second Beta of Android 15
The Android 15 beta is now available on across devices, with everything you need to try Android 15 features, test your apps, and give us feedback.
В Navigation 2.8.0-alpha08 поменяли способ формирования графа в Navigation Compose. Вместо строки route теперь используется класс. В него же можно помещать аргументы.
#navigation #compose
https://medium.com/androiddevelopers/navigation-compose-meet-type-safety-e081fb3cf2f8
#navigation #compose
https://medium.com/androiddevelopers/navigation-compose-meet-type-safety-e081fb3cf2f8
Видео с Google IO. Что нового для разработчиков появилось в последних версиях Android Studio. В том числе несколько демонстраций использования Gemini.
#android #androidstudio
https://www.youtube.com/watch?v=2wOfYgIMf-A
#android #androidstudio
https://www.youtube.com/watch?v=2wOfYgIMf-A
YouTube
What's new in Android development tools
Discover what's new in Android Studio for Android app developers. We'll share some demos and present relevant features that can accelerate developers' workflows across Android APIs, Firebase, and Google AI.
Download Android Studio → https://g.co/AndroidStudio…
Download Android Studio → https://g.co/AndroidStudio…
22 июня приглашаем на конференцию Yandex BDUI Conf от Яндекса и Яндекс Маркета! 🎉
Приходите послушать доклады спикеров и поучаствовать в нетворкинге. Будет два трека с контентом: инфраструктурный - про разработку своих решений и продуктовый - про внедрение готовых фреймворков. Обсудим, как с помощью бэкенда сделать красивые и функциональные приложения.
Вас ждут доклады спикеров Яндекса, Авито и X5 Tech! После — дискуссия про карьеру мобильных разработчиков. Ещё вы сможете поучаствовать в активностях Яндекс Маркета, выиграть мерч, погулять в летнем дворике и записаться на экскурсию в офис Яндекса.
Зарегистрироваться можно здесь. А следить за новостями конференции — на сайте.
Конференция пройдёт 22 июня в Москве в «Экстрополисе». Если не получится прийти очно, присоединяйтесь к нашей трансляции!
До встречи на Yandex BDUI Conf — будет здорово! 👋
#реклама
Приходите послушать доклады спикеров и поучаствовать в нетворкинге. Будет два трека с контентом: инфраструктурный - про разработку своих решений и продуктовый - про внедрение готовых фреймворков. Обсудим, как с помощью бэкенда сделать красивые и функциональные приложения.
Вас ждут доклады спикеров Яндекса, Авито и X5 Tech! После — дискуссия про карьеру мобильных разработчиков. Ещё вы сможете поучаствовать в активностях Яндекс Маркета, выиграть мерч, погулять в летнем дворике и записаться на экскурсию в офис Яндекса.
Зарегистрироваться можно здесь. А следить за новостями конференции — на сайте.
Конференция пройдёт 22 июня в Москве в «Экстрополисе». Если не получится прийти очно, присоединяйтесь к нашей трансляции!
До встречи на Yandex BDUI Conf — будет здорово! 👋
#реклама
Последние новости о системе сборки Amper от JetBrains. Уже можно опробовать Preview версию 0.3.0.
#build #amper
https://blog.jetbrains.com/amper/2024/05/amper-update-may-2024/
#build #amper
https://blog.jetbrains.com/amper/2024/05/amper-update-may-2024/
The JetBrains Blog
Amper Update May 2024 – Standalone Build Tool, New IDE Features, and More | The Amper Blog
Amper is an experimental project configuration tool by JetBrains. It now supports Gradle version catalogs, completion for adding new dependencies, and more!
This media is not supported in your browser
VIEW IN TELEGRAM
Новый Compose урок по теме - Input.
Вернее, даже два урока.
Первый - небольшой, в нем рассматриваем detect* функции: detectTapGestures, detectDragGestures и detectTransformGestures.
А во втором рассматриваем Modifier операторы: draggable, draggable2D, anchoredDraggable и transformable. А также подробно рассматриваем nestedScroll, с помощью которого можно получить эффект, как на видео.
#android #course #compose
https://startandroid.ru/ru/courses/compose.html
Вернее, даже два урока.
Первый - небольшой, в нем рассматриваем detect* функции: detectTapGestures, detectDragGestures и detectTransformGestures.
А во втором рассматриваем Modifier операторы: draggable, draggable2D, anchoredDraggable и transformable. А также подробно рассматриваем nestedScroll, с помощью которого можно получить эффект, как на видео.
#android #course #compose
https://startandroid.ru/ru/courses/compose.html
Полезные советы по написанию Composable функций
#android #compose #bestpractices
https://www.youtube.com/watch?v=JvbyGcqdWBA
#android #compose #bestpractices
https://www.youtube.com/watch?v=JvbyGcqdWBA
YouTube
Designing scalable Compose APIs
This talk will cover best practices and guidelines for developing idiomatic Compose APIs. We'll go over how to think about and plan for your components, how to leverage Kotlin and naming conventions, how to define a solid structure for your component, and…
Gradle запустил несколько бесплатных курсов и планирует дальше развивать это направление.
#gradle #course
https://blog.gradle.org/dpe-university-and-gradle-courses
#gradle #course
https://blog.gradle.org/dpe-university-and-gradle-courses
Принципы SOLID, только понятно
Статья, как водится, холиварная :) , читайте не только основное содержимое, но и каменты.
#android #solid #bestpractice
https://habr.com/ru/articles/811305/
Статья, как водится, холиварная :) , читайте не только основное содержимое, но и каменты.
#android #solid #bestpractice
https://habr.com/ru/articles/811305/
Хабр
Принципы SOLID, только понятно
Когда я только знакомился с принципами SOLID, я искал понятные статьи на Хабр. При этом пришлось прочитать не одну статью, и полное понимание пришло сильно позже. Хотелось бы, чтобы новички на более...
Пара статей о переходе на Kotlin 2.0
#kotlin #gradle #android
https://dev.to/marlonlom/adapt-kotlin-20-in-android-applications-3cmk
https://www.zacsweers.dev/preparing-for-k2
#kotlin #gradle #android
https://dev.to/marlonlom/adapt-kotlin-20-in-android-applications-3cmk
https://www.zacsweers.dev/preparing-for-k2
DEV Community
Adapt Kotlin 2.0 in Android applications
Read this post in Spanish here. Recently, version 2.0 of Kotlin has been released, and with it,...