Mobile Native ️️ – Telegram
Mobile Native ️️
5.61K subscribers
1.13K photos
20 videos
3 files
1.28K links
Полезные материалы по мобильной разработке. Статьи, подборки, нововведения, анонсы.

Пробустить канал → https://news.1rj.ru/str/mobile_native?boost

Автор: @artemiygreg
iOS / Swift: @swift_tips
Библиотеки и инструменты: @mobile_dev_tools
Митапы: @meetup_today
Download Telegram
Architecture related decisions in Android

Цикл статей про архитектурные решения, в которых затрагиваются различные аспекты: рекомендации от гугла, чистая архитектура, организация слоёв, обработка ошибок и т.д.

• Introduction
• Error handling and Monads
• Mapping
• Response and Reply classes
• The rest

Читать (En)
👍93🔥3
Основы Jetpack Compose: как обеспечить стабильность вашего кода

Полезная статья про то, как обеспечить стабильность вашего Jetpack Compose кода.

👉 Рекомпозиция и пропускаемость
👉 Что такое стабильность и как её отслеживать
👉 Debug
👉 Неочевидные моменты
👉 Лайфхаки
👉 Выводы

Читать (Ru)
👍10🔥93👎1
Forwarded from Swift Tips
BDUI: удовольствие или боль

Большой материал, в котором разработчик из Циан делится реальным опытом разработки собственного BDUI решения и рассказывает о нюансах, благодаря которым удалось извлечь выгоду из этой концепции.

🟢Как мы пришли к BDUI
🟢Выбор реализации
🟢Разработка
🟢Инпуты
🟢Взаимосвязанные элементы
🟢Форматирование
🟢Валидация
🟢Переходы
🟢Вертолеты
🟢Стратегия ошибок
🟢Версионирование
🟢Ретроспектива разработки
🟢Метрики
🟢Заключение

Читать (Ru)
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6😁5🔥31
Ускоряем Android-приложения с помощью Baseline Profiles

Разработчик юнита Performance в Авито рассказывает как им удалось ускорить время запуска приложения, с помощью внедрения Baseline Profiles.

👉 Какие проблемы компиляции стояли перед разработчиками раньше и при чём тут Baseline Profiles
👉 Что такое Baseline Profiles и зачем он нам понадобился
👉 Как мы тестировали Baseline Profiles
👉 Как мы автоматизировали сборку профиля и что из этого получилось
👉 Какие результаты принесли Baseline Profiles
👉 Что мы будем делать дальше
👉 Итог: нужны ли вам Baseline Profiles и что я советую сделать

Читать (Ru)
4👍3🔥3
Композим иконки. Улучшаем семантику и скорость отрисовки

Интересная статья про новый способ отрисовки иконок в Jetpack Compose с помощью кода, который позволяет улучшить семантику и скорость отрисовки.

👉 Как было раньше
👉 Что изменилось в Compose
👉 Как добавлять иконки

Читать (Ru)
👍14🔥43
Пишем простенький DI для Android приложения

Полезная статья с разбором базовых аспектов DI, на которых построены такие известные библиотеки как Dagger, Hilt и Koin и практическим примером того, как можно написать свое DI решение.

👉 Золотое трио: Dagger, Hilt и Koin
👉 Пишем свой DI контейнер
👉 Использование только что написанного DI

Читать (Ru)
👍9🔥42
Gradle Convention Plugins: как облегчить себе жизнь и уменьшить boilerplate в gradle-файлах

Старт цикла статей про то, как облегчить себе жизнь и уменьшить boilerplate в gradle-файлах с помощью Gradle Convention Plugins.

В первой части рассматриваются проблемы с build.gradle-файлами и подготавливается начальная настройка для написания Gradle Convention Plugins.

Читать (Ru)
👍9🔥32
Think you know if-else statements? Think Again!

Годная статья про распространенные ошибки при написании блоков if-else и с примерами красивых конструкций, с помощью которых ваш код будет более читаемым и понятным.

Читать (En)
🔥6👍52👀1
Add powerful analytics modifiers in Jetpack Compose with ModifierLocal!

Интересный способ отправки событий в аналитику через кастомный modifiers.

Читать (En)
👍9🔥3👎1🤔1
Decompile and Recompile APK using Apktool : Beginners Guide

Если вдруг вы никогда этого не делали, но задумывались, то вот вам пошаговый гайд как декомпилить и собрать обратно APK с помощью всем известных тулзов.

• Apktool
• Keytool
• Apksigner
• Zipalign
• JD-GUI
• dex2jar

Читать (En)
👍7🔥43
Создание плагинов и переиспользуемых частей в .gradle.kts-файлах и Kotlin extension-функциях

Вторая часть из цикла "Как облегчить себе жизнь и уменьшить boilerplate в gradle-файлах", в которой рассматривается создание плагинов и переиспользуемых частей в .gradle.kts-файлах и Kotlin extension-функциях.

Читать (Ru)
🔥7👍31👏1
Как следить за состоянием мобильного приложения?

Разработчик из Циан рассказывает, как они создавали Техническую Мобильную Аналитику (ТьМА) и получили возможность в любой момент времени ответить на вопрос: «Всё ли в порядке с приложением?»

👉 Какую проблему решаем
👉 Понятия технических метрик
👉 Технический инструментарий
👉 Устройство кластера телеметрии в Циан
👉 Реализация телеметрии в мобильных приложениях
👉 Создание метрики
👉 Что мерить?
👉 Сбор данных
👉 Построение графиков
👉 Настройка алертов
👉 Расследование проблем
👉 Вывод

Читать (Ru)
5👍5🔥5👎1
Магия ссылок Системы быстрых платежей

В статье подробно рассказывается о том, как работают платежные ссылки.

👉 Пользовательский взгляд
👉 Платежные ссылки под капотом
👉 Особенности работы платежных ссылок на мобильных платформах
👉 Как выбрать подходящий тип платежной ссылки

Читать (Ru)
👍4🔥41
Создание Convention Plugin-ов на базе Kotlin-классов

Третья часть из цикла "Как облегчить себе жизнь и уменьшить boilerplate в gradle-файлах", в которой рассматривается создание Convention Plugin‑ов на базе Kotlin‑классов.

Читать (Ru)
2👍2🔥2
Проблема UseCase-ов: что нужно знать разработчикам Android

В статье автор развенчивает миф о UseCases и рассматривает случаи, когда они необходимы, а когда - просто пустая трата времени. Если вы Android-разработчик и задаетесь вопросом, приносите ли вы больше вреда, чем пользы, следуя этому шаблону, эта статья для вас.

Читать (Ru)
👍82🔥2👎1
Forwarded from Swift Tips
Основы BDUI для продуктовых дизайнеров. Шпаргалка

Большая статья-шпаргалка от команды Альфа-Банка с описанием важных нюансов BDUI для продуктовых дизайнеров, а также опыт внедрения BDUI в дизайн-процессы с рекомендациями для тех, кто только начинает делать это у себя в продукте или команде.

👉 В чём суть BDUI, и чем он отличается от классического подхода к разработке
👉 Что такое контракт экрана, контракт компонента, и как с ним работать дизайнеру
👉 Как дизайнеру читать JSON

Читать (Ru)
👍6👎32🔥2
Koin: как сделать свой DI за 10 минут

Большая статья с примером реализации своего механизма, на котором построен Koin, с разбором возможных проблем построения собственного DI.

👉 Кратко о Koin и Service Locator
👉 Как отличать одинаковые объекты
👉 Создание концепции модулей и удаление объектов из Map
👉 Возможность создания Singleton
👉 Проброс параметров
👉 Выводы

Эта статья будет полезна тем, кто использует Koin в своих приложениях, и тем, кто хочет сделать свой простой DI.

Читать (Ru)
5👍9🔥41
50 терминов системного дизайна, которые должен знать каждый разработчик

Не совсем мобильная тема, но для общего понимания и развития, точно лишним не будет – 50 терминов системного дизайна, которые должен знать каждый разработчик.

Читать (Ru)
12🔥92👍2
ByteWeaver в Open Source: инструментирование байт-кода Java во имя великого блага

Большая и полезная статья про байт‑код, как и зачем с ним работать, ByteWeaver и примеры работы с байт‑кодом.

👉 Что такое байт-код
👉 Инструменты для работы с байт-кодом
👉 ByteWeaver и история его становления
👉 Какой байт-код мы можем править
👉 Как можно править байт-код: пример работы с ByteWeaver
👉 Примеры реальных преобразований в проде

ByteWeaver — инструмент для патчинга байт‑кода во время сборки, который может быть полезен разработчикам под Android.

Читать (Ru)
👍10🔥42
Прочие оптимизации кода Gradle Convention Plugins, выводы по результатам использования подхода

Заключительная часть из цикла "Как облегчить себе жизнь и уменьшить boilerplate в gradle-файлах", в которой оптимизируется и рефакторится написанный в предыдущих частях код, настраивается область видимости convention-плагинов и extension-функций для конфигурации сборки + подводятся итоги данного подхода.

Читать (Ru)
👍42🔥2
Декларативный подход в организации gradle зависимостей в Android-проектах

В догонку ещё одна статья про Gradle, а именно про то, как упростить работу с зависимостями, с помощью своих extension функций.

Читать (Ru)
🔥10🤔4👍32👀1