👾 Управление событиями в ViewModel с помощью StateFlow, SharedFlow и Channel
Сообщество Android-разработчиков уже долгое время ведёт жаркие споры о том, что лучше
использовать в ViewModel для представления событий: StateFlow, SharedFlow или Channel.
В этой статье автор разберётся в различиях между этими тремя подходами и определит, какой из них наиболее подходит для ваших нужд.
#новость #android #kotlin
Сообщество Android-разработчиков уже долгое время ведёт жаркие споры о том, что лучше
использовать в ViewModel для представления событий: StateFlow, SharedFlow или Channel.
В этой статье автор разберётся в различиях между этими тремя подходами и определит, какой из них наиболее подходит для ваших нужд.
#новость #android #kotlin
❤6
📱 Какие тренды в мобильной разработке нас ждут в 2025 году
Мобильная разработка продолжает активно развиваться по разным направлениям. Вот несколько основных трендов развития в 2025 году:
#новость
Мобильная разработка продолжает активно развиваться по разным направлениям. Вот несколько основных трендов развития в 2025 году:
1) ИИ
С момента выпуска Chat GPT осенью 2022 года и появления аналогичных решений от Yandex, Google и других компаний наблюдается бум LLM. Их применение охватывает широкий спектр: от чат-ассистентов до генераторов контента.
Весной 2024 года Google представил ИИ-помощников, интегрированных в ОС Android и Android Studio, а также SDK для подключения в приложения. В то же время Apple анонсировала своего ИИ-помощника на базе моделей OpenAI. Однако из-за ограничений доступ к этим решениям не у всех пользователей, что делает актуальной разработку аналогов, как, например, делает Сбер. Также растёт интерес к созданию и обучению собственных ИИ-ассистентов на базе открытых LLM, таких как Meta-LLama.
2) Кросс-платформенная разработка
Компания Google, разрабатывающая Flutter, в 2024 году сделала акцент на Kotlin Multiplatform, объявив совместимость с этой технологией приоритетом. В этом году активно переводятся Jetpack библиотеки для разработки Android-приложений на кросс-платформу. Flutter продолжает набирать популярность в компаниях как решение для быстрой разработки клиентских приложений и становится удобным инструментом для создания приложений под ОС Aurora.
3) Суперприложения
Суперприложения (супераппы) объединяют множество функций, таких как чаты, платёжные сервисы, заказ такси и еды, что делает их привлекательными для пользователей, стремящихся сократить количество установленных приложений. Разработка супераппов продолжает набирать популярность, и многие крупные компании инвестируют в их создание, что требует разработки архитектурных решений и повышения производительности.
4) Безопасность, конфиденциальность
Обеспечение безопасности и конфиденциальности данных пользователей становится всё более актуальным. Все приложения должны быть безопасными, и ежегодно компании-разработчики представляют новые решения для интеграции таких функций. Правила доступа к информации также ужесточаются.
5) SDUI
Технология Server Driven UI (SDUI), при которой содержимое и внешний вид экранов приложения определяются на стороне бэкенда и передаются в формате JSON, продолжит набирать популярность. Она оптимизирует разработку и позволяет внедрять новые функции без необходимости перевыпуска приложений. Всё больше компаний создают собственные конструкторы SDUI, которые хорошо интегрируются с декларативными фреймворками, такими как Jetpack Compose и SwiftUI.
#новость
❤5👍1
👨💻 Пусть Т9 продолжит фразу за вас:
Как же меня бесит в IT...
Как же меня бесит в IT...
🥰5
Автоматизация: Есть ли шанс у Maestro для тестирования мобильных приложений?
Итак, автоматизация тестирования мобильных приложений — это тема, которая остаётся актуальной и востребованной. За последние годы наблюдается тенденция к упрощению разработки и снижению объёма написания кода. «No code» решения только способствуют этому.
Более того, технологии искусственного интеллекта (ИИ) всё чаще применяются для создания тестов, что значительно ускоряет процессы. Например, Testim или Applitools Eyeys.
В статье автор обсудит Maestro, но прежде рассмотрит основные фреймворки для тестирования мобильных приложений и их особенности.
👉 Читать статью
#новость
Итак, автоматизация тестирования мобильных приложений — это тема, которая остаётся актуальной и востребованной. За последние годы наблюдается тенденция к упрощению разработки и снижению объёма написания кода. «No code» решения только способствуют этому.
Более того, технологии искусственного интеллекта (ИИ) всё чаще применяются для создания тестов, что значительно ускоряет процессы. Например, Testim или Applitools Eyeys.
В статье автор обсудит Maestro, но прежде рассмотрит основные фреймворки для тестирования мобильных приложений и их особенности.
👉 Читать статью
#новость
❤2
📚 Настраиваемся на работу: 8 вдохновляющих книг
Чтобы помочь вам смотреть в завтрашний день с оптимизмом, мы составили подборку вдохновляющих книг. Все, что нужно, чтобы настроиться на работу после долгих праздников.
А какие книги вдохновляют вас на продуктивную работу? Будем ждать ваших рекомендаций в комментариях.
#дайджест
Чтобы помочь вам смотреть в завтрашний день с оптимизмом, мы составили подборку вдохновляющих книг. Все, что нужно, чтобы настроиться на работу после долгих праздников.
А какие книги вдохновляют вас на продуктивную работу? Будем ждать ваших рекомендаций в комментариях.
#дайджест
🥰4❤2
👾 Морфинг геометрических фигур с SDF в фрагментных шейдерах GLSL и визуализацией на Jetpack Compose
Создание динамичных визуальных эффектов для мобильных приложений требует творческого подхода и соблюдения производительности. Эффективной техникой для плавных переходов и трансформаций является использование шейдеров, которые выполняют сложные вычисления на GPU. Это обеспечивает плавность анимаций и снижает нагрузку на CPU, что особенно важно для мобильных устройств с ограниченными ресурсами.
В данной статье будет рассмотрен пример реализации плавной анимации морфинга геометрических фигур с использованием SDF (Signed Distance Functions) и GLSL для графического рендеринга.
#новость #android #kotlin
Создание динамичных визуальных эффектов для мобильных приложений требует творческого подхода и соблюдения производительности. Эффективной техникой для плавных переходов и трансформаций является использование шейдеров, которые выполняют сложные вычисления на GPU. Это обеспечивает плавность анимаций и снижает нагрузку на CPU, что особенно важно для мобильных устройств с ограниченными ресурсами.
В данной статье будет рассмотрен пример реализации плавной анимации морфинга геометрических фигур с использованием SDF (Signed Distance Functions) и GLSL для графического рендеринга.
#новость #android #kotlin
❤3👍1🤩1
📁 Уменьшаем написание boilerplate с помощью File Templates
Автор статьи расскажет о генерации файлов с boilerplate-кодом с помощью удобного механизма задания File Templates в средах разработки Intellij. File Templates позволяет в пару кликов создавать несколько файлов с каким-либо boilerplate-кодом.
Хоть статья приводит примеры создания File Templates для Android/Kotlin Multiplatform, она может быть полезна всем, кто работает в средах разработки от Intellij.
👉 Читать статью
#новость #android #kotlin
Автор статьи расскажет о генерации файлов с boilerplate-кодом с помощью удобного механизма задания File Templates в средах разработки Intellij. File Templates позволяет в пару кликов создавать несколько файлов с каким-либо boilerplate-кодом.
Хоть статья приводит примеры создания File Templates для Android/Kotlin Multiplatform, она может быть полезна всем, кто работает в средах разработки от Intellij.
👉 Читать статью
#новость #android #kotlin
🥰5
👑 Одна билд-система, чтоб править всеми
Все iOS-разработчики привязаны к определенным системам сборки. Например, Tuist или CocoaPods. Когда на рынке появляется новое решение, мы не можем быстро взять и проверить, как оно работает, поскольку наш проект жестко описан и привязан к конкретной системе сборки.
В докладе автор разберет, как перестать полностью фиксировать описание проекта в файлах и как написать абстрактную билд-систему, которая реализует кеширование. К этой билд-системе можно подключать что угодно для сборки вашего проекта: тот же Tuist или Bazel.
👀 Смотреть доклад
#новость #ios
Все iOS-разработчики привязаны к определенным системам сборки. Например, Tuist или CocoaPods. Когда на рынке появляется новое решение, мы не можем быстро взять и проверить, как оно работает, поскольку наш проект жестко описан и привязан к конкретной системе сборки.
В докладе автор разберет, как перестать полностью фиксировать описание проекта в файлах и как написать абстрактную билд-систему, которая реализует кеширование. К этой билд-системе можно подключать что угодно для сборки вашего проекта: тот же Tuist или Bazel.
👀 Смотреть доклад
#новость #ios
👍2❤1
👾 Почему классы в Kotlin по умолчанию final?
Классы в Kotlin по умолчанию являются
В Kotlin рекомендуется использовать композицию вместо наследования для повторного использования кода и расширения функциональности.
#kotlin
Классы в Kotlin по умолчанию являются
final
для того, чтобы избежать случайного наследования и переопределения методов. Это сделано для повышения безопасности кода и уменьшения сложности программы, так как ограничение наследования помогает избежать ошибок, связанных с неожиданным изменением поведения унаследованных методов.В Kotlin рекомендуется использовать композицию вместо наследования для повторного использования кода и расширения функциональности.
#kotlin
🥰6👍2
🛠️ Giffy — клиент Giphy на чистой архитектуре
Giffy — клиентское приложение для Giphy, созданное с использованием таких интересных технологий для iOS, как TCA (The Composable Architecture by Point-Free), Swinject, SwiftUI, Чистая архитектура с подходом Generic Protocol, модуляризация SPM и XcodeGen.
⚙️ Giffy на GitHub
#новость #ios
Giffy — клиентское приложение для Giphy, созданное с использованием таких интересных технологий для iOS, как TCA (The Composable Architecture by Point-Free), Swinject, SwiftUI, Чистая архитектура с подходом Generic Protocol, модуляризация SPM и XcodeGen.
⚙️ Giffy на GitHub
#новость #ios
❤3🤩1
🧹 Чистим Android-проект просто и правильно
При разработке Android-приложений дисковое пространство может быстро загрязняться результатами сборки, кэшами Gradle и конфигурационными файлами IDE.
По умолчанию команда Android Studio «Build → Clean Project» удаляет не все. Могут накапливаться кэши, артефакты из модулей, остатки файлов Gradle и результаты сборки.
В этой статье представлен один скрипт, который комплексно решает все эти проблемы, с фантастическим выводом консоли, показывающим использование пространства до и после. Мы рассмотрим macOS/Linux (с помощью Bash) и Windows (с помощью Batch), а также проясним, как Lite-чистка скрипта сравнивается с Build → Clean Project с точки зрения освобождаемого дискового пространства и объема проекта.
👉 Читать статью
#новость #android
При разработке Android-приложений дисковое пространство может быстро загрязняться результатами сборки, кэшами Gradle и конфигурационными файлами IDE.
По умолчанию команда Android Studio «Build → Clean Project» удаляет не все. Могут накапливаться кэши, артефакты из модулей, остатки файлов Gradle и результаты сборки.
В этой статье представлен один скрипт, который комплексно решает все эти проблемы, с фантастическим выводом консоли, показывающим использование пространства до и после. Мы рассмотрим macOS/Linux (с помощью Bash) и Windows (с помощью Batch), а также проясним, как Lite-чистка скрипта сравнивается с Build → Clean Project с точки зрения освобождаемого дискового пространства и объема проекта.
👉 Читать статью
#новость #android
❤2👍2
🧑💻 Статьи для IT: как объяснять и распространять значимые идеи
Напоминаем, что у нас есть бесплатный курс для всех, кто хочет научиться интересно писать — о программировании и в целом.
Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.
Для кого: для авторов, копирайтеров и просто программистов, которые хотят научиться интересно рассказывать о своих проектах.
👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
Напоминаем, что у нас есть бесплатный курс для всех, кто хочет научиться интересно писать — о программировании и в целом.
Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.
Для кого: для авторов, копирайтеров и просто программистов, которые хотят научиться интересно рассказывать о своих проектах.
👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
❤2
🚛 Переезд с UIKIT на SwiftUI
В 2019 году компания Apple презентовала фреймворк SwiftUI. Изначально это был бесполезный, максимально сырой набор инструментов. Время шло, SwiftUI совершенствовался. Теперь на нем пишут стартапы, компании начинают внедрять его в проекты, «знание SwiftUI» все чаще появляется в вакансиях iOS разработчиков. Пора переходить с UIKit на SwiftUI.
👀 Смотреть видео
#новость #ios
В 2019 году компания Apple презентовала фреймворк SwiftUI. Изначально это был бесполезный, максимально сырой набор инструментов. Время шло, SwiftUI совершенствовался. Теперь на нем пишут стартапы, компании начинают внедрять его в проекты, «знание SwiftUI» все чаще появляется в вакансиях iOS разработчиков. Пора переходить с UIKit на SwiftUI.
👀 Смотреть видео
#новость #ios
❤7