Что нового в Kotlin 2.1.0-Beta2
- IDE support
- Support for requiring opt-in to extend APIs
- Preview of the new language features
- New Gradle DSL for compiler options in multiplatform projects is stable
- Improved overload resolution for functions with generic types
- Improved K2 kapt implementation
- Update LLVM version to 16.0.0 for Kotlin/Native
- Kotlin/Wasm
- Gradle improvements
- Compose compiler updates
https://kotlinlang.org/docs/whatsnew-eap.html
- IDE support
- Support for requiring opt-in to extend APIs
- Preview of the new language features
- New Gradle DSL for compiler options in multiplatform projects is stable
- Improved overload resolution for functions with generic types
- Improved K2 kapt implementation
- Update LLVM version to 16.0.0 for Kotlin/Native
- Kotlin/Wasm
- Gradle improvements
- Compose compiler updates
https://kotlinlang.org/docs/whatsnew-eap.html
Kotlin Help
What's new in Kotlin 2.1.0-RC2 | Kotlin
Сегодня мы подробно разберём, как интегрировать механизм Dynamic Feature Delivery в современную архитектуру Android‑приложения с использованием корутин, а также протестируем загрузку и установку динамического модуля, использующего Flutter.
#android #architecture #dfd
https://habr.com/ru/companies/yandex/articles/845344/
#android #architecture #dfd
https://habr.com/ru/companies/yandex/articles/845344/
Хабр
Динамические модули в приложениях на Android: опыт использования Dynamic Feature Delivery
Размер приложения часто играет важную роль в восприятии его пользователями и принятии ими решения о скачивании. Исследования показывают, что чем меньше размер APK, тем выше вероятность...
Меня зовут Воронская Дарья, я работаю в Android Core команде eXpress и занимаюсь оптимизацией работы приложения. Я расскажу про подходы, которые мы использовали, чтобы довести скорость отправки и рендера сообщения до того самого идеального результата.
В этой статье речь пойдет только о работе с локальной базой данных. Оптимизация БД — лишь часть большой работы, мы расскажем про наши решения по оптимизации presentation слоя в других статьях.
Наш стек: Kotlin, Room, Coroutines, WebSocket, OkHttp.
#android #database #performance
https://habr.com/ru/companies/express/articles/852268/
В этой статье речь пойдет только о работе с локальной базой данных. Оптимизация БД — лишь часть большой работы, мы расскажем про наши решения по оптимизации presentation слоя в других статьях.
Наш стек: Kotlin, Room, Coroutines, WebSocket, OkHttp.
#android #database #performance
https://habr.com/ru/companies/express/articles/852268/
Хабр
Как в eXpress достигали мгновенного рендера отправки сообщения: оптимизация локальной базы данных
Откройте eXpress и отправьте в чат простое "Привет". Обратите внимание на то, сколько времени прошло между тем, как вы нажали на кнопку "отправить", и тем, как сообщение появилось в чате. Для...
Базовая статья о векторных иконках. Рассказывает, что означает набор символов типа "M3,5 L27,5 L16,23 Z".
#android #graphics #icon #vector
https://medium.com/@charles-raj/creating-custom-vector-icons-in-android-studio-a-step-by-step-guide-b4239d406b63
#android #graphics #icon #vector
https://medium.com/@charles-raj/creating-custom-vector-icons-in-android-studio-a-step-by-step-guide-b4239d406b63
Medium
Creating Custom Vector Icons in Android Studio: A Step-by-Step Guide
Hello Buddy’s, In this blog, we’ll dive into creating custom vector icons in Android Studio, a process that can give your app a unique…
Выпуск подкаста Android Developers Backstage про разработку UI/UX части Android Studio.
Intro
Android Dev UX team
What kind of libraries and languages are used to build Android studio?
Swing
Reactive and declarative programming models
SKIA for Kotlin
Jetpack Compose widgets
Jewel
Text rendering across platforms
Differences in behaviors
Support for markdown files
What is markdown?
Swing and html
Selection handling in StudioBot
Boosting productivity with Compose
Standalone vs plugin artifacts
The difference between Jewel & Swing
HTML vs Markdown
Markdeep
Jewel's Markdown API
Where to find Jewel?
Sebastiano’s podcast - Code with the Italians
Final thoughts
#androidstudio
https://www.youtube.com/watch?v=HmjKmoct3Ws
Intro
Android Dev UX team
What kind of libraries and languages are used to build Android studio?
Swing
Reactive and declarative programming models
SKIA for Kotlin
Jetpack Compose widgets
Jewel
Text rendering across platforms
Differences in behaviors
Support for markdown files
What is markdown?
Swing and html
Selection handling in StudioBot
Boosting productivity with Compose
Standalone vs plugin artifacts
The difference between Jewel & Swing
HTML vs Markdown
Markdeep
Jewel's Markdown API
Where to find Jewel?
Sebastiano’s podcast - Code with the Italians
Final thoughts
#androidstudio
https://www.youtube.com/watch?v=HmjKmoct3Ws
YouTube
Studio Jewelry - Android Developers Backstage
Link to podcast → https://goo.gle/3YAzC4c
In this episode Chet, Romain and Tor chat with Sebastiano about how the Android Studio team builds UIs. We talk about how Compose for Desktop is used in parts of Android Studio and how the Compose Markdown renderer…
In this episode Chet, Romain and Tor chat with Sebastiano about how the Android Studio team builds UIs. We talk about how Compose for Desktop is used in parts of Android Studio and how the Compose Markdown renderer…
Dos and Don’ts для ViewModel, часть 5:
- Avoid hardcoding Coroutine Dispatchers.
- Unit test your ViewModels.
- Avoid exposing suspended functions.
#kotlin #android #viewmodel #bestpractise
https://proandroiddev.com/mastering-android-viewmodels-essential-dos-and-donts-part-5-%EF%B8%8F5%EF%B8%8F%E2%83%A3-14d04ec2426a
- Avoid hardcoding Coroutine Dispatchers.
- Unit test your ViewModels.
- Avoid exposing suspended functions.
#kotlin #android #viewmodel #bestpractise
https://proandroiddev.com/mastering-android-viewmodels-essential-dos-and-donts-part-5-%EF%B8%8F5%EF%B8%8F%E2%83%A3-14d04ec2426a
Medium
Mastering Android ViewModels: Essential Dos and Don’ts Part 5 🛠️5️⃣
keep these in mind for better code quality when doing ViewModels!
Media is too big
VIEW IN TELEGRAM
Тестируйте мобильные приложения без эмуляторов и телефонов
Для тестирования мобильных приложений раньше нужно было покупать разные модели смартфонов, обслуживать устройства, передавать их между сотрудниками и все это без возможности провести параллельное тестирование.
Сейчас возможно приблизиться к клиентскому опыту, проводить параллельные тесты на разных устройствах, проверять производительность, нажатия и UI. И все это благодаря мобильной ферме от Selectel. Физические устройства покупать не нужно — они доступны к аренде удаленно.
Вы можете получить доступ бесплатно. Для этого запросите демо продукта и убедитесь в удобстве мобильной фермы на собственном опыте.
Преимущества мобильной фермы Selectel:
● Простор для тестирования как на популярных, так и на редких моделях телефонов — 100+ моделей смартфонов с разными параметрами (Android версии, процессоры, диагонали и т.д.)
● Доступность — легкая аренда и управление устройствами без ограничений по времени сессий через my.selectel
● Удаленная работа на устройствах из любой точки мира
● Удобство — настройки сохраняются, пока устройство закреплено за вами вне зависимости от количества тестов и длины сессии.
● Безопасность — информация о ваших сессиях автоматически удаляется после завершения аренды
Оставляйте запрос на демо продукта: https://slc.tl/r5y83
Реклама АО «Селектел». ИНН: 7810962785 Erid: 2VtzqvfZ8rg
Для тестирования мобильных приложений раньше нужно было покупать разные модели смартфонов, обслуживать устройства, передавать их между сотрудниками и все это без возможности провести параллельное тестирование.
Сейчас возможно приблизиться к клиентскому опыту, проводить параллельные тесты на разных устройствах, проверять производительность, нажатия и UI. И все это благодаря мобильной ферме от Selectel. Физические устройства покупать не нужно — они доступны к аренде удаленно.
Вы можете получить доступ бесплатно. Для этого запросите демо продукта и убедитесь в удобстве мобильной фермы на собственном опыте.
Преимущества мобильной фермы Selectel:
● Простор для тестирования как на популярных, так и на редких моделях телефонов — 100+ моделей смартфонов с разными параметрами (Android версии, процессоры, диагонали и т.д.)
● Доступность — легкая аренда и управление устройствами без ограничений по времени сессий через my.selectel
● Удаленная работа на устройствах из любой точки мира
● Удобство — настройки сохраняются, пока устройство закреплено за вами вне зависимости от количества тестов и длины сессии.
● Безопасность — информация о ваших сессиях автоматически удаляется после завершения аренды
Оставляйте запрос на демо продукта: https://slc.tl/r5y83
Реклама АО «Селектел». ИНН: 7810962785 Erid: 2VtzqvfZ8rg
Задача этой статьи только одна - попробовать уложить принципы SOLID на понятных «бытовых» примерах, а уже потом посмотреть, как оно может работать на практике - в коде.
#solid #pattern
https://habr.com/ru/articles/849350/
#solid #pattern
https://habr.com/ru/articles/849350/
Хабр
Принципы SOLID на примерах из жизни и разработки
Задача этой статьи только одна - попробовать уложить принципы SOLID на понятных «бытовых» примерах, а уже потом посмотреть, как оно может работать на практике - в коде. Итак, SOLID - это 5 принципов,...
Команда Spring АйО перевела статью об исследовании Uplevel, которое показало, что использование GitHub Copilot не улучшает производительность разработчиков, а наоборот — увеличивает количество ошибок в коде.
Разработчики стали тратить больше времени на проверку ИИ-сгенерированного кода, что снижает ожидаемую экономию времени. Хотя компании активно внедряют ИИ-инструменты, их реальная польза для повышения продуктивности остается под вопросом.
#ai #coding #copilot
https://habr.com/ru/companies/spring_aio/articles/854624/
Разработчики стали тратить больше времени на проверку ИИ-сгенерированного кода, что снижает ожидаемую экономию времени. Хотя компании активно внедряют ИИ-инструменты, их реальная польза для повышения продуктивности остается под вопросом.
#ai #coding #copilot
https://habr.com/ru/companies/spring_aio/articles/854624/
Хабр
Действительно ли ИИ-помощники экономят время разработчиков?
Команда Spring АйО перевела статью об исследовании Uplevel, которое показало, что использование GitHub Copilot не улучшает производительность разработчиков, а наоборот — увеличивает количество ошибок...
Что нового в Amper 0.5.0
- Tooling support for working with modules and project files
- Improved nested completion
- Compose resources
- Kotlin Symbol Processing
- Android release builds
- Parcelize support for Android
- Updated dependencies and defaults
- New, unified cache folder
#build #amper
https://blog.jetbrains.com/amper/2024/11/amper-update-november-2024/
- Tooling support for working with modules and project files
- Improved nested completion
- Compose resources
- Kotlin Symbol Processing
- Android release builds
- Parcelize support for Android
- Updated dependencies and defaults
- New, unified cache folder
#build #amper
https://blog.jetbrains.com/amper/2024/11/amper-update-november-2024/
The JetBrains Blog
Amper Update November 2024 – Project File Tooling, Compose Resources, KSP2, and Android Release Builds | The Amper Blog
Amper is an experimental build tool by JetBrains. Its latest release adds support for Compose Multiplatform resources, KSP2, Android release builds, and improves IDE support.
От выбора рекламной сети зависит доход приложения
Чтобы получить максимум от монетизации, важно не ошибиться с выбором сети. Вот на какие критерии стоит смотреть:
— Размер базы рекламодателей;
— Точность таргетинга;
— Разнообразие рекламных форматов;
— Сервис и поддержка.
Большинству разработчиков, которые пишут на React Native, iOS, Android, Flutter и Unity, подойдёт Рекламная сеть Яндекса.
У РСЯ есть своя платформа медиации, к которой можно подключить дополнительно до 15 рекламных сетей и получать самые выгодные предложения. А база прямых рекламодателей — свыше 300 000 из более чем 30 индустрий от финансов до ритейла.
Узнать больше о РСЯ и подключить свое приложение можно по ссылке.
#реклама
Чтобы получить максимум от монетизации, важно не ошибиться с выбором сети. Вот на какие критерии стоит смотреть:
— Размер базы рекламодателей;
— Точность таргетинга;
— Разнообразие рекламных форматов;
— Сервис и поддержка.
Большинству разработчиков, которые пишут на React Native, iOS, Android, Flutter и Unity, подойдёт Рекламная сеть Яндекса.
У РСЯ есть своя платформа медиации, к которой можно подключить дополнительно до 15 рекламных сетей и получать самые выгодные предложения. А база прямых рекламодателей — свыше 300 000 из более чем 30 индустрий от финансов до ритейла.
Узнать больше о РСЯ и подключить свое приложение можно по ссылке.
#реклама
Статья рассчитана на разработчиков, которые знакомы с базовыми концепциями Android-разработки, но хотят освоить более структурированные и поддерживаемые подходы к разработке. Мы создадим приложение Just Notes, которое позволит управлять заметками: добавлять, редактировать, удалять и просматривать их на главном экране.
В процессе мы будем следовать лучшим практикам, таким как разделение на слои data, domain, и presentation, и применение принципов SOLID. Мы рассмотрим основные этапы разработки, начиная от настройки проекта и добавления зависимостей, до реализации сложных сценариев использования, включая навигацию и управление состоянием с помощью ViewModel.
#android #architecture
https://habr.com/ru/articles/854450/
В процессе мы будем следовать лучшим практикам, таким как разделение на слои data, domain, и presentation, и применение принципов SOLID. Мы рассмотрим основные этапы разработки, начиная от настройки проекта и добавления зависимостей, до реализации сложных сценариев использования, включая навигацию и управление состоянием с помощью ViewModel.
#android #architecture
https://habr.com/ru/articles/854450/
Хабр
Как написать Android приложение, которое не будет стыдно положить в портфолио. Гайд для новичков в Android разработке
Введение В этом гайде мы напишем с вами Android-приложение с нуля, используя лучшие архитектурные подходы – Clean Architecture и MVVM с элементами MVI, они обеспечат поддерживаемость, тестируемость и...
Обзор новых возможностей Gemini. Пока только в Canary, но некоторые скоро попадут в стабильный Ladybug Feature Drop.
Gemini Code Transforms - modify and refactor your code within the editor
Commit message generation - automatically generate commit messages with Gemini
Rethink and Rename - get help renaming your classes, methods, and variables
Prompt library - save and recall your most commonly used
Compose Preview Generation - generate previews for your composables with Gemini
Generate documentation - have Gemini help you document your code
Unit test scenario generation - generate unit test scenarios
Build / sync error insights - ask Gemini for help in troubleshooting build and sync errors
App Quality Insights - insights on how you can fix crashes from Android Vitals and Firebase Crashlytics
#androidstudio #ai
https://android-developers.googleblog.com/2024/10/whats-new-in-gemini-in-android.html
Gemini Code Transforms - modify and refactor your code within the editor
Commit message generation - automatically generate commit messages with Gemini
Rethink and Rename - get help renaming your classes, methods, and variables
Prompt library - save and recall your most commonly used
Compose Preview Generation - generate previews for your composables with Gemini
Generate documentation - have Gemini help you document your code
Unit test scenario generation - generate unit test scenarios
Build / sync error insights - ask Gemini for help in troubleshooting build and sync errors
App Quality Insights - insights on how you can fix crashes from Android Vitals and Firebase Crashlytics
#androidstudio #ai
https://android-developers.googleblog.com/2024/10/whats-new-in-gemini-in-android.html
Android Developers Blog
Gemini in Android Studio, now helping you across the development lifecycle
New Android Studio features empower devs with AI assistance across the development lifecycle, from coding and UI design to testing and deployment.
Стать сотрудником Яндекса быстрее и проще, чем кажется. Участвуйте в днях быстрого найма: решите тестовое, пройдите несколько секций собеседования и получите офер за несколько дней.
Ближайшее мероприятие:
• 30 ноября – 1 декабря — для Android- и iOS-разработчиков, офер за 2 дня в команды Карт и Рекламы.
Зарегистрироваться
#реклама
Ближайшее мероприятие:
• 30 ноября – 1 декабря — для Android- и iOS-разработчиков, офер за 2 дня в команды Карт и Рекламы.
Зарегистрироваться
#реклама
Автор попытался создать ViewModel со временем жизни Composable функции. Штука, может и ненужная, но интересная, чтобы лучше понимать и Compose и ViewModel.
#android #compose #viewmodel #lifecycle
https://proandroiddev.com/composable-scoped-viewmodel-an-interesting-experiment-b982b86d84cd
#android #compose #viewmodel #lifecycle
https://proandroiddev.com/composable-scoped-viewmodel-an-interesting-experiment-b982b86d84cd
Medium
Composable-scoped ViewModel: An interesting experiment
Scope any ViewModel to the composition of the Composable it is in, while surviving configuration changes, by using the power of Lifecycle.
Гугл прям всерьез работает над производительностью и надежностью Android Emulator. И уже даже добилась снижения количества крэшей на 30%.
Верим и ждем :)
#android #avd #emulator
https://android-developers.googleblog.com/2024/11/android-emulator-stability-performance-updates.html
Верим и ждем :)
#android #avd #emulator
https://android-developers.googleblog.com/2024/11/android-emulator-stability-performance-updates.html
Android Developers Blog
A Smoother Ride: Android Emulator Stability and Performance Updates
Project Quartz, an initiative by the Android Studio team, delivers improvements to the stability, reliability, and performance of the Android Emulator
👍Стройте эффективную многопоточную/асинхронную инфраструктуру приложений!
Узнайте как на бесплатном уроке онлайн-курса «Android Developer. Professional» — «Kotlin Coroutine в Android-разработке»: регистрация
Что будет на вебинаре?
- Теоретические и практические основы корутины: structured concurrency, builders, suspend функции, coroutine context, обработка exceptions.
- Каналы: producer channel/ Consumer channel; типы каналов по размеру буффера; rendevouz Channel и другие.
- Flow: builders; операторы; обработка исключений во Flow; миграция на Flow.
Результаты вебинара:
- Узнаете, как правильно использовать корутины и suspend функции, глубоко разобравшись в их устройстве и best practices
- Научитесь реализовывать операторы и писать правильные цепочки, используя Flow
- Сможете использовать знания для построения эффективной инфраструктуры приложений.
🔥После вебинара вы сможете продолжить обучение на курсе по спеццене, в том числе, в рассрочку.
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Узнайте как на бесплатном уроке онлайн-курса «Android Developer. Professional» — «Kotlin Coroutine в Android-разработке»: регистрация
Что будет на вебинаре?
- Теоретические и практические основы корутины: structured concurrency, builders, suspend функции, coroutine context, обработка exceptions.
- Каналы: producer channel/ Consumer channel; типы каналов по размеру буффера; rendevouz Channel и другие.
- Flow: builders; операторы; обработка исключений во Flow; миграция на Flow.
Результаты вебинара:
- Узнаете, как правильно использовать корутины и suspend функции, глубоко разобравшись в их устройстве и best practices
- Научитесь реализовывать операторы и писать правильные цепочки, используя Flow
- Сможете использовать знания для построения эффективной инфраструктуры приложений.
🔥После вебинара вы сможете продолжить обучение на курсе по спеццене, в том числе, в рассрочку.
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Статья рассматривает несколько полезных git команд
Например, есть команда Bisect, которая поможет бинарным поиском найти коммит, который все поломал)
#git
https://medium.com/@madhanrkv10/mastering-git-advanced-commands-and-comprehensive-explanations-400bcc3fbcc5
Например, есть команда Bisect, которая поможет бинарным поиском найти коммит, который все поломал)
#git
https://medium.com/@madhanrkv10/mastering-git-advanced-commands-and-comprehensive-explanations-400bcc3fbcc5
Medium
Mastering Git: Advanced Commands and Comprehensive Explanations
Unlock the full potential of Git with essential and advanced commands. From everyday operations to powerful features, this guide provides…
Вышла первая Developer Preview версия Android 16. И немного поменялась схема релизов.
#android #developerpreview
https://android-developers.googleblog.com/2024/11/the-first-developer-preview-android16.html
https://commonsware.com/blog/2024/11/19/random-musings-android-16-dp1.html
#android #developerpreview
https://android-developers.googleblog.com/2024/11/the-first-developer-preview-android16.html
https://commonsware.com/blog/2024/11/19/random-musings-android-16-dp1.html
Кажется, кого ни спроси — всякий сегодня мастерит инструмент для код-ревью на основе ИИ. Тем самым все обещают совершить революцию в программировании и управлении кодом. Но мы, попробовав почти все имеющиеся на рынке инструменты код-ревью и написав собственный, пришли к выводу, который невозможно отрицать: ИИ для этой цели просто не годится.
В этом посте мы подробнее рассмотрим, чего реально не хватает при код-ревью с использованием искусственного интеллекта, и почему человек в таком качестве незаменим. Кроме того, этот анализ поможет нам лучше понять, в чём ИИ действительно хорош.
#codereview #ai
https://habr.com/ru/articles/859582/
В этом посте мы подробнее рассмотрим, чего реально не хватает при код-ревью с использованием искусственного интеллекта, и почему человек в таком качестве незаменим. Кроме того, этот анализ поможет нам лучше понять, в чём ИИ действительно хорош.
#codereview #ai
https://habr.com/ru/articles/859582/
Хабр
Почему ИИ рано поручать код-ревью
Кажется, кого ни спроси — всякий сегодня мастерит инструмент для код-ревью на основе ИИ. Тем самым все обещают совершить революцию в программировании и управлении кодом. Но мы, попробовав почти все...