Forwarded from Swift Tips
BDUI: удовольствие или боль
Большой материал, в котором разработчик из Циан делится реальным опытом разработки собственного BDUI решения и рассказывает о нюансах, благодаря которым удалось извлечь выгоду из этой концепции.
🟢 Как мы пришли к BDUI
🟢 Выбор реализации
🟢 Разработка
🟢 Инпуты
🟢 Взаимосвязанные элементы
🟢 Форматирование
🟢 Валидация
🟢 Переходы
🟢 Вертолеты
🟢 Стратегия ошибок
🟢 Версионирование
🟢 Ретроспектива разработки
🟢 Метрики
🟢 Заключение
Читать (Ru)
Большой материал, в котором разработчик из Циан делится реальным опытом разработки собственного BDUI решения и рассказывает о нюансах, благодаря которым удалось извлечь выгоду из этой концепции.
Читать (Ru)
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6😁5🔥3❤1
Ускоряем Android-приложения с помощью Baseline Profiles
Разработчик юнита Performance в Авито рассказывает как им удалось ускорить время запуска приложения, с помощью внедрения Baseline Profiles.
👉 Какие проблемы компиляции стояли перед разработчиками раньше и при чём тут Baseline Profiles
👉 Что такое Baseline Profiles и зачем он нам понадобился
👉 Как мы тестировали Baseline Profiles
👉 Как мы автоматизировали сборку профиля и что из этого получилось
👉 Какие результаты принесли Baseline Profiles
👉 Что мы будем делать дальше
👉 Итог: нужны ли вам Baseline Profiles и что я советую сделать
Читать (Ru)
Разработчик юнита Performance в Авито рассказывает как им удалось ускорить время запуска приложения, с помощью внедрения Baseline Profiles.
👉 Какие проблемы компиляции стояли перед разработчиками раньше и при чём тут Baseline Profiles
👉 Что такое Baseline Profiles и зачем он нам понадобился
👉 Как мы тестировали Baseline Profiles
👉 Как мы автоматизировали сборку профиля и что из этого получилось
👉 Какие результаты принесли Baseline Profiles
👉 Что мы будем делать дальше
👉 Итог: нужны ли вам Baseline Profiles и что я советую сделать
Читать (Ru)
❤4👍3🔥3
Композим иконки. Улучшаем семантику и скорость отрисовки
Интересная статья про новый способ отрисовки иконок в Jetpack Compose с помощью кода, который позволяет улучшить семантику и скорость отрисовки.
👉 Как было раньше
👉 Что изменилось в Compose
👉 Как добавлять иконки
Читать (Ru)
Интересная статья про новый способ отрисовки иконок в Jetpack Compose с помощью кода, который позволяет улучшить семантику и скорость отрисовки.
👉 Как было раньше
👉 Что изменилось в Compose
👉 Как добавлять иконки
Читать (Ru)
👍14🔥4❤3
Пишем простенький DI для Android приложения
Полезная статья с разбором базовых аспектов DI, на которых построены такие известные библиотеки как Dagger, Hilt и Koin и практическим примером того, как можно написать свое DI решение.
👉 Золотое трио: Dagger, Hilt и Koin
👉 Пишем свой DI контейнер
👉 Использование только что написанного DI
Читать (Ru)
Полезная статья с разбором базовых аспектов DI, на которых построены такие известные библиотеки как Dagger, Hilt и Koin и практическим примером того, как можно написать свое DI решение.
👉 Золотое трио: Dagger, Hilt и Koin
👉 Пишем свой DI контейнер
👉 Использование только что написанного DI
Читать (Ru)
👍9🔥4❤2
Gradle Convention Plugins: как облегчить себе жизнь и уменьшить boilerplate в gradle-файлах
Старт цикла статей про то, как облегчить себе жизнь и уменьшить boilerplate в gradle-файлах с помощью Gradle Convention Plugins.
В первой части рассматриваются проблемы с
Читать (Ru)
Старт цикла статей про то, как облегчить себе жизнь и уменьшить boilerplate в gradle-файлах с помощью Gradle Convention Plugins.
В первой части рассматриваются проблемы с
build.gradle-файлами и подготавливается начальная настройка для написания Gradle Convention Plugins.Читать (Ru)
👍9🔥3❤2
Think you know if-else statements? Think Again!
Годная статья про распространенные ошибки при написании блоков if-else и с примерами красивых конструкций, с помощью которых ваш код будет более читаемым и понятным.
Читать (En)
Годная статья про распространенные ошибки при написании блоков if-else и с примерами красивых конструкций, с помощью которых ваш код будет более читаемым и понятным.
Читать (En)
🔥6👍5❤2👀1
Add powerful analytics modifiers in Jetpack Compose with ModifierLocal!
Интересный способ отправки событий в аналитику через кастомный modifiers.
Читать (En)
Интересный способ отправки событий в аналитику через кастомный modifiers.
Читать (En)
👍9🔥3👎1🤔1
Decompile and Recompile APK using Apktool : Beginners Guide
Если вдруг вы никогда этого не делали, но задумывались, то вот вам пошаговый гайд как декомпилить и собрать обратно APK с помощью всем известных тулзов.
• Apktool
• Keytool
• Apksigner
• Zipalign
• JD-GUI
• dex2jar
Читать (En)
Если вдруг вы никогда этого не делали, но задумывались, то вот вам пошаговый гайд как декомпилить и собрать обратно APK с помощью всем известных тулзов.
• Apktool
• Keytool
• Apksigner
• Zipalign
• JD-GUI
• dex2jar
Читать (En)
👍7🔥4❤3
Создание плагинов и переиспользуемых частей в .gradle.kts-файлах и Kotlin extension-функциях
Вторая часть из цикла "Как облегчить себе жизнь и уменьшить boilerplate в gradle-файлах", в которой рассматривается создание плагинов и переиспользуемых частей в
Читать (Ru)
Вторая часть из цикла "Как облегчить себе жизнь и уменьшить boilerplate в gradle-файлах", в которой рассматривается создание плагинов и переиспользуемых частей в
.gradle.kts-файлах и Kotlin extension-функциях.Читать (Ru)
🔥7👍3❤1👏1
Как следить за состоянием мобильного приложения?
Разработчик из Циан рассказывает, как они создавали Техническую Мобильную Аналитику (ТьМА) и получили возможность в любой момент времени ответить на вопрос: «Всё ли в порядке с приложением?»
👉 Какую проблему решаем
👉 Понятия технических метрик
👉 Технический инструментарий
👉 Устройство кластера телеметрии в Циан
👉 Реализация телеметрии в мобильных приложениях
👉 Создание метрики
👉 Что мерить?
👉 Сбор данных
👉 Построение графиков
👉 Настройка алертов
👉 Расследование проблем
👉 Вывод
Читать (Ru)
Разработчик из Циан рассказывает, как они создавали Техническую Мобильную Аналитику (ТьМА) и получили возможность в любой момент времени ответить на вопрос: «Всё ли в порядке с приложением?»
👉 Какую проблему решаем
👉 Понятия технических метрик
👉 Технический инструментарий
👉 Устройство кластера телеметрии в Циан
👉 Реализация телеметрии в мобильных приложениях
👉 Создание метрики
👉 Что мерить?
👉 Сбор данных
👉 Построение графиков
👉 Настройка алертов
👉 Расследование проблем
👉 Вывод
Читать (Ru)
❤5👍5🔥5👎1
Магия ссылок Системы быстрых платежей
В статье подробно рассказывается о том, как работают платежные ссылки.
👉 Пользовательский взгляд
👉 Платежные ссылки под капотом
👉 Особенности работы платежных ссылок на мобильных платформах
👉 Как выбрать подходящий тип платежной ссылки
Читать (Ru)
В статье подробно рассказывается о том, как работают платежные ссылки.
👉 Пользовательский взгляд
👉 Платежные ссылки под капотом
👉 Особенности работы платежных ссылок на мобильных платформах
👉 Как выбрать подходящий тип платежной ссылки
Читать (Ru)
👍4🔥4❤1
Создание Convention Plugin-ов на базе Kotlin-классов
Третья часть из цикла "Как облегчить себе жизнь и уменьшить boilerplate в gradle-файлах", в которой рассматривается создание Convention Plugin‑ов на базе Kotlin‑классов.
Читать (Ru)
Третья часть из цикла "Как облегчить себе жизнь и уменьшить boilerplate в gradle-файлах", в которой рассматривается создание Convention Plugin‑ов на базе Kotlin‑классов.
Читать (Ru)
❤2👍2🔥2
Проблема UseCase-ов: что нужно знать разработчикам Android
В статье автор развенчивает миф о UseCases и рассматривает случаи, когда они необходимы, а когда - просто пустая трата времени. Если вы Android-разработчик и задаетесь вопросом, приносите ли вы больше вреда, чем пользы, следуя этому шаблону, эта статья для вас.
Читать (Ru)
В статье автор развенчивает миф о UseCases и рассматривает случаи, когда они необходимы, а когда - просто пустая трата времени. Если вы Android-разработчик и задаетесь вопросом, приносите ли вы больше вреда, чем пользы, следуя этому шаблону, эта статья для вас.
Читать (Ru)
👍8❤2🔥2👎1
Forwarded from Swift Tips
Основы BDUI для продуктовых дизайнеров. Шпаргалка
Большая статья-шпаргалка от команды Альфа-Банка с описанием важных нюансов BDUI для продуктовых дизайнеров, а также опыт внедрения BDUI в дизайн-процессы с рекомендациями для тех, кто только начинает делать это у себя в продукте или команде.
👉 В чём суть BDUI, и чем он отличается от классического подхода к разработке
👉 Что такое контракт экрана, контракт компонента, и как с ним работать дизайнеру
👉 Как дизайнеру читать JSON
Читать (Ru)
Большая статья-шпаргалка от команды Альфа-Банка с описанием важных нюансов BDUI для продуктовых дизайнеров, а также опыт внедрения BDUI в дизайн-процессы с рекомендациями для тех, кто только начинает делать это у себя в продукте или команде.
👉 В чём суть BDUI, и чем он отличается от классического подхода к разработке
👉 Что такое контракт экрана, контракт компонента, и как с ним работать дизайнеру
👉 Как дизайнеру читать JSON
Читать (Ru)
👍6👎3❤2🔥2
Koin: как сделать свой DI за 10 минут
Большая статья с примером реализации своего механизма, на котором построен Koin, с разбором возможных проблем построения собственного DI.
👉 Кратко о Koin и Service Locator
👉 Как отличать одинаковые объекты
👉 Создание концепции модулей и удаление объектов из Map
👉 Возможность создания Singleton
👉 Проброс параметров
👉 Выводы
Эта статья будет полезна тем, кто использует Koin в своих приложениях, и тем, кто хочет сделать свой простой DI.
Читать (Ru)
Большая статья с примером реализации своего механизма, на котором построен Koin, с разбором возможных проблем построения собственного DI.
👉 Кратко о Koin и Service Locator
👉 Как отличать одинаковые объекты
👉 Создание концепции модулей и удаление объектов из Map
👉 Возможность создания Singleton
👉 Проброс параметров
👉 Выводы
Эта статья будет полезна тем, кто использует Koin в своих приложениях, и тем, кто хочет сделать свой простой DI.
Читать (Ru)
5👍9🔥4❤1
50 терминов системного дизайна, которые должен знать каждый разработчик
Не совсем мобильная тема, но для общего понимания и развития, точно лишним не будет – 50 терминов системного дизайна, которые должен знать каждый разработчик.
Читать (Ru)
Не совсем мобильная тема, но для общего понимания и развития, точно лишним не будет – 50 терминов системного дизайна, которые должен знать каждый разработчик.
Читать (Ru)
12🔥9❤2👍2
ByteWeaver в Open Source: инструментирование байт-кода Java во имя великого блага
Большая и полезная статья про байт‑код, как и зачем с ним работать, ByteWeaver и примеры работы с байт‑кодом.
👉 Что такое байт-код
👉 Инструменты для работы с байт-кодом
👉 ByteWeaver и история его становления
👉 Какой байт-код мы можем править
👉 Как можно править байт-код: пример работы с ByteWeaver
👉 Примеры реальных преобразований в проде
ByteWeaver — инструмент для патчинга байт‑кода во время сборки, который может быть полезен разработчикам под Android.
Читать (Ru)
Большая и полезная статья про байт‑код, как и зачем с ним работать, ByteWeaver и примеры работы с байт‑кодом.
👉 Что такое байт-код
👉 Инструменты для работы с байт-кодом
👉 ByteWeaver и история его становления
👉 Какой байт-код мы можем править
👉 Как можно править байт-код: пример работы с ByteWeaver
👉 Примеры реальных преобразований в проде
ByteWeaver — инструмент для патчинга байт‑кода во время сборки, который может быть полезен разработчикам под Android.
Читать (Ru)
👍10🔥4❤2
Прочие оптимизации кода Gradle Convention Plugins, выводы по результатам использования подхода
Заключительная часть из цикла "Как облегчить себе жизнь и уменьшить boilerplate в gradle-файлах", в которой оптимизируется и рефакторится написанный в предыдущих частях код, настраивается область видимости convention-плагинов и extension-функций для конфигурации сборки + подводятся итоги данного подхода.
Читать (Ru)
Заключительная часть из цикла "Как облегчить себе жизнь и уменьшить boilerplate в gradle-файлах", в которой оптимизируется и рефакторится написанный в предыдущих частях код, настраивается область видимости convention-плагинов и extension-функций для конфигурации сборки + подводятся итоги данного подхода.
Читать (Ru)
👍4❤2🔥2
Декларативный подход в организации gradle зависимостей в Android-проектах
В догонку ещё одна статья про Gradle, а именно про то, как упростить работу с зависимостями, с помощью своих extension функций.
Читать (Ru)
В догонку ещё одна статья про Gradle, а именно про то, как упростить работу с зависимостями, с помощью своих extension функций.
Читать (Ru)
🔥10🤔4👍3❤2👀1
Как зеленый Леруа Мерлен стал желтым Лемана ПРО
Я тут на недельку выпал, вначале отходил от небольшого отпуска, затем погряз в рабочие задачи. Чутка раскидался со всеми делами и возвращаюсь к публикациям.
Статья про то, как делали ребрендинг мобилок из Леруа Мерлен в Лемана ПРО.
👉 Цвета
👉 Картинки
👉 Название
👉 Lottie анимации
Читать (Ru)
Я тут на недельку выпал, вначале отходил от небольшого отпуска, затем погряз в рабочие задачи. Чутка раскидался со всеми делами и возвращаюсь к публикациям.
Статья про то, как делали ребрендинг мобилок из Леруа Мерлен в Лемана ПРО.
👉 Цвета
👉 Картинки
👉 Название
👉 Lottie анимации
Читать (Ru)
👍11🔥3❤2👎1
Как улучшить качество WebRTC-звонков на примере сервиса VK Звонки
Если вдруг делаете звонки через WebRTC, тут разработчик из VK рассказывает, как можно улучшить качество и реализовать некоторые доп. штуки.
👉 WebRTC
👉 Качество и оптимизация
👉 Демонстрация экрана
Читать (Ru)
Если вдруг делаете звонки через WebRTC, тут разработчик из VK рассказывает, как можно улучшить качество и реализовать некоторые доп. штуки.
👉 WebRTC
👉 Качество и оптимизация
👉 Демонстрация экрана
Читать (Ru)
👍13🔥4👎2🤔2