Точка
Онлайн-банк для предпринимателей
Предыстория
Наше сотрудничество с Точкой началось в 2018 году, когда команда SimbirSoft подключилась к разработке формы онлайн-заявления на открытие счета. В 2019 году клиент снова обратился к нам для того, чтобы усилить свою команду и решить задачи из обширного бэклога. За год совместной работы мы выполнили сотни задач, в рамках кейса остановимся на двух из них.
Задача
Разработать новую функцию в мобильном приложении – предоставить возможность пополнять карту/счет пользователя Точки с карты другого банка.
Решение
Android
Для платформы Android мы реализовали указанную функцию с нуля, поскольку технологический стек предыдущей версии приложения не соответствовал текущим требования клиента.
На старте мы описали логику новой функции, проверки полей и выбора счета, на который должны быть зачислены деньги. После этого мы реализовали форму пополнения счета и UI-компонент карты. Добавили список недавних операций, настроили маску, которая позволяет подставить карту из недавних пополнений, а также анимацию.
Одной из наших задач было создать элемент интерфейса для отображения банковской карты. Для этого мы реализовали четыре способа ввода ее номера: вручную, из истории, с помощью автозаполнения или сканирования. После заполнения первых 8 цифр на карте появляется логотип соответствующего банка, и она анимированно окрашивается в фирменные цвета.
iOS
На платформе iOS для работы с функцией пополнения мы использовали фреймворк RXSwift.
Также реализовали экран для отображения карты, который позволяет вводить номер, дату и CVV-код, затем показывает список недавних переводов.
Мы анимировали функцию, которая показывает или скрывает секцию с картами по запросу пользователя. Если он выбирает счет другого банка из недавних пополнений, то в приложении выполняется автоматическое предзаполнение.
Когда пользователь заполняет поле ввода номера карты, то автоматически происходит проверка буфера обмена. Если в буфере уже есть нужная информация, то появляется экшн с надписью «Вставить (номер карты)». Также пользователь может перейти на этот экран с других экранов.
Проект в цифрах:
-
6
специалистов в команде
-
1,5
года работы над проектом
-
100 000+
скачиваний в Google Play
Технологии
Android: Kotlin, dagger 2, coroutines, android architecture components, многомодульность, realm, retrofit, flow, тесты на Junit, databinding в связке с LiveData.
iOS: MVM+Coordinator, RxSwift, RxCocoa, SnapKit, RxDataSource, WebKit, UIKit
Крестики-нолики
Также, по желанию клиента, мы разработали в приложении игру «крестики-нолики». Она появляется на экране пользователя в случае потери/отсутствия сети или других проблем с сервером, чтобы скрасить время ожидания. Разработали отдельный интерфейс с отрисовкой всех элементов, настроили алгоритм игры, добавили анимацию.
Технологии
Android: LottieAnimationView, Coroutine, LiveData, Android Bindings, Dagger, Junit.
iOS: MVVM+Coordinator, RxSwift, RxCocoa, SnapKit, RxDataSource, WebKit, UIKit.