Магия ссылок Системы быстрых платежей
В статье подробно рассказывается о том, как работают платежные ссылки.
👉 Пользовательский взгляд
👉 Платежные ссылки под капотом
👉 Особенности работы платежных ссылок на мобильных платформах
👉 Как выбрать подходящий тип платежной ссылки
Читать (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
Forwarded from Swift Tips
Profiling apps using Instruments
Apple выпустила новую серию туториалов по использованию Instruments для анализа производительности, ресурсов и поведения приложений.
• Getting started with hang analysis
• Identifying a hang
• Analyzing main thread activity
• Determining execution frequency
• Reducing main thread work by doing less
• Executing work asynchronously
• Understanding synchronous and asynchronous hangs
• Ensuring work executes on a background thread
Читать (En)
Apple выпустила новую серию туториалов по использованию Instruments для анализа производительности, ресурсов и поведения приложений.
• Getting started with hang analysis
• Identifying a hang
• Analyzing main thread activity
• Determining execution frequency
• Reducing main thread work by doing less
• Executing work asynchronously
• Understanding synchronous and asynchronous hangs
• Ensuring work executes on a background thread
Читать (En)
👍5❤3🔥3
Тесты для функций compose в андроид
Туториал для начинающих по тестированию Android-приложений с использованием Jetpack Compose, в котором рассматриваются различные виды тестов, настройки и примеры инструментальных тестов для Compose функций.
👉 Зачем нужны вообще тесты?
👉 Основные виды тестов
👉 Практика
Читать (Ru)
Туториал для начинающих по тестированию Android-приложений с использованием Jetpack Compose, в котором рассматриваются различные виды тестов, настройки и примеры инструментальных тестов для Compose функций.
👉 Зачем нужны вообще тесты?
👉 Основные виды тестов
👉 Практика
Читать (Ru)
2👍7🔥6❤4
Корутины: stackful vs stackless
Довольно полезная статья, в которой автор объясняет разницу между stackless и stackful корутинами: чем они отличаются, какие у них плюсы и минусы, а также в общих чертах рассказывается, как в некоторых языках программирования реализована многопоточность.
👉 Процессы и Потоки
👉 Модель корутин поближе
👉 Stackful и Stackless корутины
👉 Переключение между корутинами
👉 Как реализован стек
👉 Где используются корутины
P.S. В статье корутины рассматриваются как общий концепт, без привязки к конкретному языку.
Читать (Ru)
Довольно полезная статья, в которой автор объясняет разницу между stackless и stackful корутинами: чем они отличаются, какие у них плюсы и минусы, а также в общих чертах рассказывается, как в некоторых языках программирования реализована многопоточность.
👉 Процессы и Потоки
👉 Модель корутин поближе
👉 Stackful и Stackless корутины
👉 Переключение между корутинами
👉 Как реализован стек
👉 Где используются корутины
P.S. В статье корутины рассматриваются как общий концепт, без привязки к конкретному языку.
Читать (Ru)
12❤10👍5🔥5
Динамические модули в приложениях на Android: опыт использования Dynamic Feature Delivery
Статья от разработчика Яндекс Go про интеграцию механизма Dynamic Feature Delivery в современную архитектуру Android‑приложения с использованием корутин и внедрение динамического модуля, использующего Flutter.
👉 SplitInstallManager: что это и как работает
👉 Реализация обёртки для SplitInstallManager
👉 Реализация и тестирование DynamicFeatureLoader
Читать (Ru)
Статья от разработчика Яндекс Go про интеграцию механизма Dynamic Feature Delivery в современную архитектуру Android‑приложения с использованием корутин и внедрение динамического модуля, использующего Flutter.
👉 SplitInstallManager: что это и как работает
👉 Реализация обёртки для SplitInstallManager
👉 Реализация и тестирование DynamicFeatureLoader
Читать (Ru)
👍6❤4🔥3
How we improved our 1Weather Android app cold startup time by over 70% and slow cold start sessions by over 24%
Статья про перформанс, а именно как и с помощью каких инструментов можно ускорить время старта приложения, посредством несложных оптимизаций.
Если коротко: анализ, StrictMode, ленивая инициализация зависимостей, инициализация SDK в бекграунд потоках, вёрстка на ConstraintLayout.
Читать (En)
Статья про перформанс, а именно как и с помощью каких инструментов можно ускорить время старта приложения, посредством несложных оптимизаций.
Если коротко: анализ, StrictMode, ленивая инициализация зависимостей, инициализация SDK в бекграунд потоках, вёрстка на ConstraintLayout.
Читать (En)
5🔥10👍7❤1
Gradle Convention Plugins: как облегчить себе жизнь и уменьшить boilerplate в gradle-файлах
Собрал все ссылки на статьи из цикла "Gradle Convention Plugins: как облегчить себе жизнь и уменьшить boilerplate в gradle-файлах" в один пост.
• Проблемы build.gradle-файлов и начальная настройка для написания Gradle Convention Plugins
• Создание плагинов и переиспользуемых частей в .gradle.kts-файлах и Kotlin extension-функциях
• Создание Convention Plugin-ов на базе Kotlin-классов
• Оптимизации кода Gradle Convention Plugins, выводы по результатам использования подхода
Собрал все ссылки на статьи из цикла "Gradle Convention Plugins: как облегчить себе жизнь и уменьшить boilerplate в gradle-файлах" в один пост.
• Проблемы build.gradle-файлов и начальная настройка для написания Gradle Convention Plugins
• Создание плагинов и переиспользуемых частей в .gradle.kts-файлах и Kotlin extension-функциях
• Создание Convention Plugin-ов на базе Kotlin-классов
• Оптимизации кода Gradle Convention Plugins, выводы по результатам использования подхода
5👍10❤4🔥3
Forwarded from Swift Tips
This media is not supported in your browser
VIEW IN TELEGRAM
Open SwiftUI Animations
Репозиторий с реализациями большого количества разнообразных анимаций на SwiftUI.
GitHub → Open SwiftUI Animations
Репозиторий с реализациями большого количества разнообразных анимаций на SwiftUI.
GitHub → Open SwiftUI Animations
👍4❤3🔥3
Paint the Stars — Drawing with Compose and Canvas
Если вдруг вам нужно отрисовать вот такие звёздочки с планетами, на Canvas в Jetpack Compose, вот вам статья 😉
Читать (En)
Если вдруг вам нужно отрисовать вот такие звёздочки с планетами, на Canvas в Jetpack Compose, вот вам статья 😉
Читать (En)
🔥10❤4👍4
This media is not supported in your browser
VIEW IN TELEGRAM
Compose Animations Playground
Репозиторий с набором различных анимаций для Compose Multiplatform.
GitHub → ComposeAnimationsPlayground
Репозиторий с набором различных анимаций для Compose Multiplatform.
GitHub → ComposeAnimationsPlayground
👍8🔥4🤔2
Решение проблемы race condition в Kotlin корутинах
Статья с разбором и примерами различных способов решения проблемы race condition в корутинах.
👉 Mutex
👉 Атомарные операции
👉 Channels
👉 Actors
👉 Semaphore
👉 SharedFlow или StateFlow
Читать (Ru)
Статья с разбором и примерами различных способов решения проблемы race condition в корутинах.
👉 Mutex
👉 Атомарные операции
👉 Channels
👉 Actors
👉 Semaphore
👉 SharedFlow или StateFlow
Читать (Ru)
7🔥14👍4❤3🤔1