Один год в продакшне с Flutter: уроки, которые были усвоены
Кирилл Бубочкин из Mews поделился опытом своей команды по поддержке Flutter-проекта. Он рассказал про архитектуру приложения (BLoC + иммутабельность + чистая архитектура), использованные библиотеки (rxdart, flutter_bloc и другие), UI-тесты, CI и принятый code style.
Текстовая версия на английском: tprg.ru/ROIu
Текстовая версия на русском: tprg.ru/NL4O
Доклад на YouTube: youtu.be/ARP5AozTplw
#flutter #доклады
Кирилл Бубочкин из Mews поделился опытом своей команды по поддержке Flutter-проекта. Он рассказал про архитектуру приложения (BLoC + иммутабельность + чистая архитектура), использованные библиотеки (rxdart, flutter_bloc и другие), UI-тесты, CI и принятый code style.
Текстовая версия на английском: tprg.ru/ROIu
Текстовая версия на русском: tprg.ru/NL4O
Доклад на YouTube: youtu.be/ARP5AozTplw
#flutter #доклады
YouTube
1 year in production with Flutter: lessons learned — Kirill Bubochkin, Mews
In this talk, I’d like to share our way to structure the app (BLoC + immutability + Clean Architecture principles), which libraries we’ve found useful (freezed, flutter_bloc, rxdart and others), what practices work better within a team (custom analysis options…
👍1
This media is not supported in your browser
VIEW IN TELEGRAM
Flutter-приложение, демонстрирующее использование анимаций в интерфейсе
Простой пример того, как встроить анимации так, чтобы не перегружали интерфейс. Написано полностью на Flutter.
В репозитории автор даже собрал готовый APK-файл, с которым можно поиграться в эмуляторе (или на реальном Android-устройстве):
github.com/shubhamhackz/animated_onboarding
#flutter #ui
Простой пример того, как встроить анимации так, чтобы не перегружали интерфейс. Написано полностью на Flutter.
В репозитории автор даже собрал готовый APK-файл, с которым можно поиграться в эмуляторе (или на реальном Android-устройстве):
github.com/shubhamhackz/animated_onboarding
#flutter #ui
👍1
GitHub Actions для Android-разработчиков
GitHub Actions позволяет автоматизировать сборку, тестирование и развёртывание проекта с GitHub.
Если вы ещё мало знакомы с инструментом, то в статье автор рассказал о полезных фишках GitHub Actions для Android-разработки:
tprg.ru/qVAG
#android
GitHub Actions позволяет автоматизировать сборку, тестирование и развёртывание проекта с GitHub.
Если вы ещё мало знакомы с инструментом, то в статье автор рассказал о полезных фишках GitHub Actions для Android-разработки:
tprg.ru/qVAG
#android
👍1
Внедрение кода на Kotlin в Flutter-приложение
Нативный Kotlin-код в приложении на Flutter может понадобиться при работе с «железом устройства», например Bluetooth, NFC и датчиком отпечатка пальцев.
Для связки кода на Kotlin и Dart в Flutter используется механизм MethodChannel, по сути представляющий собой API для отдельных платформ. В статье объясняется, как реализовать такую связку:
tprg.ru/nr2E
#flutter #android #kotlin
Нативный Kotlin-код в приложении на Flutter может понадобиться при работе с «железом устройства», например Bluetooth, NFC и датчиком отпечатка пальцев.
Для связки кода на Kotlin и Dart в Flutter используется механизм MethodChannel, по сути представляющий собой API для отдельных платформ. В статье объясняется, как реализовать такую связку:
tprg.ru/nr2E
#flutter #android #kotlin
👍1
Как найти подходящую абстракцию для работы со строками в Android-приложении
Внутри большого Android-проекта могут использоваться разные типы строковых ресурсов. Чтобы облегчить дальнейшую разработку и тестирование приложения, можно создать отдельную абстракцию, которая будет принимать различные типы строк и выдавать строку уже в едином формате.
Один из вариантов реализации такой абстракции описан в статье:
tprg.ru/3tu9
#android
Внутри большого Android-проекта могут использоваться разные типы строковых ресурсов. Чтобы облегчить дальнейшую разработку и тестирование приложения, можно создать отдельную абстракцию, которая будет принимать различные типы строк и выдавать строку уже в едином формате.
Один из вариантов реализации такой абстракции описан в статье:
tprg.ru/3tu9
#android
👍1
Простой агрегатор фильмов на Flutter
На GitHub множество примеров приложений с информацией по фильмам, но в этом много внимания уделено UI и анимациям. Кроме того, автор утверждает, что приложение соответствует принципам чистой архитектуры:
github.com/marciovalim/flutter-movies-app
#flutter #ui
На GitHub множество примеров приложений с информацией по фильмам, но в этом много внимания уделено UI и анимациям. Кроме того, автор утверждает, что приложение соответствует принципам чистой архитектуры:
github.com/marciovalim/flutter-movies-app
#flutter #ui
👍1
Что не так с Xcode: баги и проблемы с производительностью
Среда разработки Xcode является стандартом для разработки приложений на iOS и macOS, поскольку разрабатывается самой Apple. Но у неё есть проблемы, на которые жалуется множество разработчиков.
В статье мы перечислили основные баги и более принципиальные проблемы, которые существуют в современной Xcode:
tprg.ru/NQWJ
#ios
Среда разработки Xcode является стандартом для разработки приложений на iOS и macOS, поскольку разрабатывается самой Apple. Но у неё есть проблемы, на которые жалуется множество разработчиков.
В статье мы перечислили основные баги и более принципиальные проблемы, которые существуют в современной Xcode:
tprg.ru/NQWJ
#ios
Tproger
Что не так с Xcode: баги и проблемы с производительностью
Xcode — это единственный способ, от начала и до конца, создать нативное приложение для iOS. Рассказываем, что не так с IDE от Apple.
👍1
А вас устраивает Xcode?
Anonymous Poll
17%
Да, всё работает отлично
24%
Нет, есть проблемы
59%
Android Studio — мой выбор
👎1
Forwarded from Представляешь,
Google впервые за 7 лет кардинально изменит внешний вид Android
Нас ждут: виджеты в стиле iOS, изменение внешнего вида системы на смесь iOS и MIUI и т.д. Судя по всему, по этой причине поисковый гигант даже решил перейти от Material Design к Material NEXT:
https://tprg.ru/kP47
Нас ждут: виджеты в стиле iOS, изменение внешнего вида системы на смесь iOS и MIUI и т.д. Судя по всему, по этой причине поисковый гигант даже решил перейти от Material Design к Material NEXT:
https://tprg.ru/kP47
👍1
Как iOS-разработчики из Dodo Engineering меняли flow оплаты заказа в приложении
Изначально в iOS-приложении «Додо Пиццы» было два экрана оплаты заказа: выбор адреса и выбор способа оплаты. Команда разработчиков решила объединить экраны в один, поскольку часто пользователи заказывают на одни и те адреса.
Планировалось, что задача займёт 2 месяца, однако на неё ушло 9 месяцев. С какими проблемами столкнулись разработчики, читайте в статье:
tprg.ru/ml3n
#ios
Изначально в iOS-приложении «Додо Пиццы» было два экрана оплаты заказа: выбор адреса и выбор способа оплаты. Команда разработчиков решила объединить экраны в один, поскольку часто пользователи заказывают на одни и те адреса.
Планировалось, что задача займёт 2 месяца, однако на неё ушло 9 месяцев. С какими проблемами столкнулись разработчики, читайте в статье:
tprg.ru/ml3n
#ios
👍1
Доклады с Mobius 2020 Moscow
Стали доступны записи выступлений с конференции по мобильной разработке Mobius 2020 Moscow. Темы докладов в 2020 году сместились в сторону:
— кроссплатформенной разработки (Flutter, Kotlin Multiplatform);
— декларативного UI (Jetpack Compose, SwiftUI);
— модуляризации приложений.
В будущем мы обязательно расскажем подробнее о наиболее интересных докладах.
Плейлист на YouTube: tprg.ru/ocZv
#доклады
Стали доступны записи выступлений с конференции по мобильной разработке Mobius 2020 Moscow. Темы докладов в 2020 году сместились в сторону:
— кроссплатформенной разработки (Flutter, Kotlin Multiplatform);
— декларативного UI (Jetpack Compose, SwiftUI);
— модуляризации приложений.
В будущем мы обязательно расскажем подробнее о наиболее интересных докладах.
Плейлист на YouTube: tprg.ru/ocZv
#доклады
Набор индикаторов загрузки на Dart
В репозитории содержится множество горизонтальных, вертикальных и кольцевых индикаторов загрузки для Flutter. Даже если не будете использовать в своём проекте, интересна сама реализация примеров.
Репозиторий: github.com/SandroMaglione/step-progress-indicator
#flutter #ui
В репозитории содержится множество горизонтальных, вертикальных и кольцевых индикаторов загрузки для Flutter. Даже если не будете использовать в своём проекте, интересна сама реализация примеров.
Репозиторий: github.com/SandroMaglione/step-progress-indicator
#flutter #ui
Как Material Design помогает брендировать ваше приложение
Material Design оставляет множество возможностей для создания уникального облика приложения, чем кажется на первый взгляд.
В статье рассмотрены основные направления для кастомизации:
tprg.ru/07tu
#android
Material Design оставляет множество возможностей для создания уникального облика приложения, чем кажется на первый взгляд.
В статье рассмотрены основные направления для кастомизации:
tprg.ru/07tu
#android
Forwarded from Представляешь,
вышла первая бета Android 12 для разработчиков
И там даже есть первые отголоски Material NEW, о котором стало известно чуть раньше.
Но куда интереснее фичи, связанные с конфиденциальностью наших с вами данных:
https://tprg.ru/wZab
И там даже есть первые отголоски Material NEW, о котором стало известно чуть раньше.
Но куда интереснее фичи, связанные с конфиденциальностью наших с вами данных:
https://tprg.ru/wZab
Google опубликовала рекомендации по разработке качественных Android-приложений
На одной странице собраны обновлённые чеклисты по нескольким категориям: разработка интерфейса, функциональность, производительность и стабильность работы, безопасность и приватность, а также публикация в Google Play:
developer.android.com/quality
Также Google подготовила небольшой ролик с кратким обзором рекомендаций:
youtu.be/QxyvS1oZOUs
#android
На одной странице собраны обновлённые чеклисты по нескольким категориям: разработка интерфейса, функциональность, производительность и стабильность работы, безопасность и приватность, а также публикация в Google Play:
developer.android.com/quality
Также Google подготовила небольшой ролик с кратким обзором рекомендаций:
youtu.be/QxyvS1oZOUs
#android
YouTube
Introduction to Android app quality
As the Android platform grows, so have user's expectations, from privacy to user experience. Today, app developers need to make sure that their app not only works, but works well, and that it takes advantage of the latest Android features. In this video,…
Jetpack Compose для консистентности UI приложений: доклад Антона Шилова
Внедрение компонентов Jetpack Compose в уже существующий проект требует переписывания большого количества кода, но зато позволит в дальнейшем упростить разработку и поддержку UI приложения.
В докладе Антон Шилов поделился опытом миграции на Jetpack Compose и создания кастомной дизайн-системы:
youtu.be/hrC7rTe6_HA
#android #jetpack #ui #доклады
Внедрение компонентов Jetpack Compose в уже существующий проект требует переписывания большого количества кода, но зато позволит в дальнейшем упростить разработку и поддержку UI приложения.
В докладе Антон Шилов поделился опытом миграции на Jetpack Compose и создания кастомной дизайн-системы:
youtu.be/hrC7rTe6_HA
#android #jetpack #ui #доклады
YouTube
Антон Шилов — Jetpack Compose для консистентности UI ваших приложений
Ближайшая конференция: Mobius 2023 Autumn — 1–2 ноября (Online), 9–10 ноября (Offline, Санкт-Петербург)
Подробности и билеты: https://cutt.ly/XwrLVnLV
— —
. . .
Не так давно Google анонсировал Jetpack Compose — декларативный UI-фреймворк, призванный ускорить…
Подробности и билеты: https://cutt.ly/XwrLVnLV
— —
. . .
Не так давно Google анонсировал Jetpack Compose — декларативный UI-фреймворк, призванный ускорить…
Создание параллакс-эффекта на Jetpack Compose
В статье разбирается реализация простого примера параллакса: картинка при скролле плавно исчезает и заменяется текстом. Используется Jetpack Compose версии 1.0.0-alpha11:
tprg.ru/B52Y
#android #jetpack
В статье разбирается реализация простого примера параллакса: картинка при скролле плавно исчезает и заменяется текстом. Используется Jetpack Compose версии 1.0.0-alpha11:
tprg.ru/B52Y
#android #jetpack
👍1
Создание свайпа для открытия меню на Jetpack Compose
Реализовано на связке компонентов SwipeToDismiss и AnimatedVisibility.
Статья с подробной реализацией примера: tprg.ru/gOna
Код: github.com/Skyyo/ComposeSwipeToReveal
#jetpack #android
Реализовано на связке компонентов SwipeToDismiss и AnimatedVisibility.
Статья с подробной реализацией примера: tprg.ru/gOna
Код: github.com/Skyyo/ComposeSwipeToReveal
#jetpack #android
👍1
Внедрение видеостриминга в Flutter-приложение с использованием Mux
Управление потоковой передачей видео — громоздкая задача, поскольку необходимо расшифровать видео, организовать и оптимизировать хранилище данных, обеспечить поддержку различных типов данных и дистрибуцию видео.
Часть работы по потоковой передаче видео может выполнить сервис Mux. В статье объясняется, как с его помощью создать простое приложение на Flutter с видеостримингом:
tprg.ru/35K4
Код приложения: github.com/sbis04/flutter_stream
#flutter
Управление потоковой передачей видео — громоздкая задача, поскольку необходимо расшифровать видео, организовать и оптимизировать хранилище данных, обеспечить поддержку различных типов данных и дистрибуцию видео.
Часть работы по потоковой передаче видео может выполнить сервис Mux. В статье объясняется, как с его помощью создать простое приложение на Flutter с видеостримингом:
tprg.ru/35K4
Код приложения: github.com/sbis04/flutter_stream
#flutter
👍1
Распознание блоков текста в iOS-приложении с помощью Vision
Фреймворк Vision существенно упрощает распознавание объектов на изображениях. Одна из сфер его применения — выделение текста с фото. Например, текстом может быть итоговая сумма в бумажном чеке. Как реализовать такую функциональность с Vision, читайте в статье:
tprg.ru/sQbe
#ios
Фреймворк Vision существенно упрощает распознавание объектов на изображениях. Одна из сфер его применения — выделение текста с фото. Например, текстом может быть итоговая сумма в бумажном чеке. Как реализовать такую функциональность с Vision, читайте в статье:
tprg.ru/sQbe
#ios
👍1