Разбор детских приложений: СберКидс — как работает для родителя 👨
Сегодня разберём, как работает приложение СберКидс с точки зрения второго участника процесса — родителя. Родитель подключает в приложение СберKids карту, с которой будет делать переводы на карту ребенка, и мониторит его финансовую историю. И вот как выглядит использование приложения для взрослого.
👨👩👦👦 Главная. Блоки «Полезное» в родительском приложении частично повторяют виджеты из детского. Есть и взрослый контент: «Как научить ребенка экономить» или «Таск-менеджер для дома». Можно подключить в приложение счета других детей и связаться с поддержкой. Во взрослом приложении к соцсетям для связи с банком добавился Фейсбук.
При клике на имя ребенка попадаем в раздел с его картой, операциями и историей.
👨👩👦👦 Операции. На детской карте не может быть больше 15 тысяч ₽. Пополнить детскую карту можно на любую сумму в пределах этого лимита. Родитель устанавливает лимиты на одну покупку, на день и на месяц. В любой момент их можно скорректировать.
В разделе «Что хочет в подарок» предполагается, что ребенок формирует свои хотелки в детском приложении, а они отображаются также у родителя. Судя по всему, опция в разработке.
В разделе «Блокировка», кроме непосредственно закрытия карты, дублируется переход в настройку лимитов.
«История» показывает всё, что происходило со счетом карты, включая переводы денег в копилку и обратно с копилки на счет. Жаль, что в детском приложении истории нет. Это позволило бы ребенку самостоятельно оценивать свои расходы в динамике.
👨👩👦👦 Резюме. Главные задачи детское приложение выполняет: карта заводится моментально, ею можно расплачиваться бесконтактным способом, деньги удобно копить. Жаль только, что другие функции с многообещающими названиями «Получи профит», «Стань круче» не работают.
#worst_practices #best_practices
Сегодня разберём, как работает приложение СберКидс с точки зрения второго участника процесса — родителя. Родитель подключает в приложение СберKids карту, с которой будет делать переводы на карту ребенка, и мониторит его финансовую историю. И вот как выглядит использование приложения для взрослого.
👨👩👦👦 Главная. Блоки «Полезное» в родительском приложении частично повторяют виджеты из детского. Есть и взрослый контент: «Как научить ребенка экономить» или «Таск-менеджер для дома». Можно подключить в приложение счета других детей и связаться с поддержкой. Во взрослом приложении к соцсетям для связи с банком добавился Фейсбук.
При клике на имя ребенка попадаем в раздел с его картой, операциями и историей.
👨👩👦👦 Операции. На детской карте не может быть больше 15 тысяч ₽. Пополнить детскую карту можно на любую сумму в пределах этого лимита. Родитель устанавливает лимиты на одну покупку, на день и на месяц. В любой момент их можно скорректировать.
В разделе «Что хочет в подарок» предполагается, что ребенок формирует свои хотелки в детском приложении, а они отображаются также у родителя. Судя по всему, опция в разработке.
В разделе «Блокировка», кроме непосредственно закрытия карты, дублируется переход в настройку лимитов.
«История» показывает всё, что происходило со счетом карты, включая переводы денег в копилку и обратно с копилки на счет. Жаль, что в детском приложении истории нет. Это позволило бы ребенку самостоятельно оценивать свои расходы в динамике.
👨👩👦👦 Резюме. Главные задачи детское приложение выполняет: карта заводится моментально, ею можно расплачиваться бесконтактным способом, деньги удобно копить. Жаль только, что другие функции с многообещающими названиями «Получи профит», «Стань круче» не работают.
#worst_practices #best_practices
Проблемы и их решения при разработке приложения для криптобиржи 📈
Несколько лет назад нам довелось разрабатывать приложение для криптовалютной биржи Twim. Это был интересный опыт: нам пришлось глубоко погрузиться в отрасль, чтобы определить, что важно для пользователя и какие проблемы могут помешать ему осуществлять операции в мобильном приложении. И вот какие главные проблемы мы выявили.
❌ Низкая скорость передачи данных. Очень важно, чтобы котировки в приложении криптобиржи обновлялись постоянно и практически в реальном времени. Не все приложения могут похвастаться высокой скоростью работы. Например, у пользователей есть нарекания к скорости работы мобильного приложения площадки для профессиональных трейдеров KuCoin. А приложение биржи EXMO не оптимизировано для работы на мобильном трафике.
Как мы решали эту проблему? При разработке приложения мы стремились сохранить высокую скорость передачи данных — они должны были обновляться до 20 раз в секунду. Поэтому вместо REST мы использовали связку из gRPC, HTTP/2 и буферов протоколов (protobuf).
Вот как это работало. gRPC — высокопроизводительный фреймфорк для удалённого вызова процедур от Google. С его помощью приложение передавало потоки данных — котировки криптовалют — от сервера к клиенту и обратно. Протокол HTTP/2 преобразовывал данные в бинарный вид. Это экономило трафик и повышало скорость их передачи.
Протокол сериализации protobuf стал альтернативой JSON. Он упаковывал данные для клиента и сервера и делал это очень быстро, так как они были в бинарном виде, оптимизированы под минимальный размер сообщения.
В 2017 году, когда мы делали приложение для криптовалютной биржи Twim, Android корректно работал с gRPC, так как уже были стабильные библиотеки. А вот для iOS мы написали интерпретатор, который генерировал сущности на языке Swift, на котором писали приложение для iOS. Сейчас в такой прослойке необходимости нет, так как разработчики уже сделали реализацию для Swift.
❌ Перегрев аккумулятора устройства и мерцание экрана. На любой бирже котировки меняются очень часто, несколько раз в секунду. Эти данные постоянно поступают с сервера. Изменение сразу же отображается на графике, а значит, приложению приходится мгновенно перерисовывать интерфейс.
От такой интенсивной работы старые или маломощные устройства начинают перегреваться, а батарея — садиться со страшной скоростью. Может появиться мерцание экрана или фризы — это происходит из-за того, что процессор не успевает обрабатывать события. И разработчику приложения нужно эту проблему предотвратить.
Как мы решали эту проблему? Мы сложили данные в стек — можно сравнить со списком или стопкой. Пока интерфейс отрисовывает новые данные, с сервера приходят ещё обновления, они последовательно складываются в наш «список»-стек. Когда UI обращается за новыми данными, он берёт последнее, самое актуальное обновление, и рисует его. Так процессор успевает переработать информацию, а аккумулятор работает в нормальном режиме.
#worst_practices #финтех
Несколько лет назад нам довелось разрабатывать приложение для криптовалютной биржи Twim. Это был интересный опыт: нам пришлось глубоко погрузиться в отрасль, чтобы определить, что важно для пользователя и какие проблемы могут помешать ему осуществлять операции в мобильном приложении. И вот какие главные проблемы мы выявили.
❌ Низкая скорость передачи данных. Очень важно, чтобы котировки в приложении криптобиржи обновлялись постоянно и практически в реальном времени. Не все приложения могут похвастаться высокой скоростью работы. Например, у пользователей есть нарекания к скорости работы мобильного приложения площадки для профессиональных трейдеров KuCoin. А приложение биржи EXMO не оптимизировано для работы на мобильном трафике.
Как мы решали эту проблему? При разработке приложения мы стремились сохранить высокую скорость передачи данных — они должны были обновляться до 20 раз в секунду. Поэтому вместо REST мы использовали связку из gRPC, HTTP/2 и буферов протоколов (protobuf).
Вот как это работало. gRPC — высокопроизводительный фреймфорк для удалённого вызова процедур от Google. С его помощью приложение передавало потоки данных — котировки криптовалют — от сервера к клиенту и обратно. Протокол HTTP/2 преобразовывал данные в бинарный вид. Это экономило трафик и повышало скорость их передачи.
Протокол сериализации protobuf стал альтернативой JSON. Он упаковывал данные для клиента и сервера и делал это очень быстро, так как они были в бинарном виде, оптимизированы под минимальный размер сообщения.
В 2017 году, когда мы делали приложение для криптовалютной биржи Twim, Android корректно работал с gRPC, так как уже были стабильные библиотеки. А вот для iOS мы написали интерпретатор, который генерировал сущности на языке Swift, на котором писали приложение для iOS. Сейчас в такой прослойке необходимости нет, так как разработчики уже сделали реализацию для Swift.
❌ Перегрев аккумулятора устройства и мерцание экрана. На любой бирже котировки меняются очень часто, несколько раз в секунду. Эти данные постоянно поступают с сервера. Изменение сразу же отображается на графике, а значит, приложению приходится мгновенно перерисовывать интерфейс.
От такой интенсивной работы старые или маломощные устройства начинают перегреваться, а батарея — садиться со страшной скоростью. Может появиться мерцание экрана или фризы — это происходит из-за того, что процессор не успевает обрабатывать события. И разработчику приложения нужно эту проблему предотвратить.
Как мы решали эту проблему? Мы сложили данные в стек — можно сравнить со списком или стопкой. Пока интерфейс отрисовывает новые данные, с сервера приходят ещё обновления, они последовательно складываются в наш «список»-стек. Когда UI обращается за новыми данными, он берёт последнее, самое актуальное обновление, и рисует его. Так процессор успевает переработать информацию, а аккумулятор работает в нормальном режиме.
#worst_practices #финтех