Требуется написать мобильное приложение для мониторинга цен акций на бирже. Приложение обязательно должно запускаться на ОС IOS и быть реализовано на языке программирования Swift.
-
Архитектура мобильного приложения
В связи с тем, что ваше приложение может в дальнейшем расширятся и иметь дополнительный функционал, оно должно быть написано с понятным устройством элементов мобильного приложения, позволяющим в дальнейшем масштабировать и оптимизировать приложение без лишней работы.
-
Внешний вид
Необходимо продумать дизайн мобильного приложения, составить его так, чтобы контентом было удобно пользоваться. Желательно опираться на современные инструкции дизайнов мобильных приложений от компании Apple.
-
Адаптивность
Сегодня абсолютно большая часть трафика идет с мобильных устройств, однако iOS работает на линейке устройствах с разными размерами и форм факторами. В связи с этим ваше приложение должно корректно отображаться на максимальном количестве устройств, начиная с IPhone 7 и новее.
-
Инструкции по запуску
Вместе с вашим проектом необходима инструкция, которая позволит развернуть ваше решение на эмуляторе или реальном устройстве другого разработчика или тестировщика. Необходимо указать, какая версия ОС необходима для работы с проектом, какие разрешения необходимо выдать для запуска проекта, если это нужно делать вручную, а также другую всевозможную информацию, которую необходимо знать для успешного запуска разработанного приложения.
Все данные, непосредственно наполнение, необходимо брать с открытого API, расположенного на сайте https://finnhub.io/docs/api.
Приложение должно быть полностью русифицировано.
Необходимо создать простое мобильное приложение, общающееся со сторонним открытым API и демонстрирующее нынешнее состояние списка акций с возможностью подробнее изучить полную информацию о конкретной акции. Если у мобильного приложения на момент ввода нет названия подключения к сети, то приложение должно предупредить пользователя о необходимости такого подключения.
На втором уровне необходимо добавить возможность поиска акции по ее названию или тикеру, с дальнейшим сохранением истории поиска пользователя для ускорения данного процесса. Так же необходимо реализовать возможность сохранения интересующих акций во вкладку «Избранное» для быстрого перехода к ним. Весь функционал полного перечня акций должен работать и в избранном перечне.
Все элементы экранов должны быть анимированы. Например, при изменении графиков при их обновлении, они плавно перерисовываются. Решение по внешнему виду анимации остаются за вами, но анимации обязаны выглядеть эстетично и соответствовать гайдлайнам Apple.
Приложение обязано строиться на последних принятых стандартах архитектуры мобильных приложений.
Большим плюсом будет создание приложения сразу и под Apple Watch, где вы выводите список любимых бумаг пользователя. Приложение обязано быть построено как приложение компаньон и получать список выбранных любимых бумаг именно с телефона.
Приложение должно быть адаптивно и поддерживать iPad и iPhone. При открытии вашего приложения на iPad разметка не должна съезжать или открываться в режиме отображения экрана размером с iPhone на экране iPad.
В связи с тем, что мобильное приложение редко разрабатывается без ошибок, то важным этапом разработки является тестирование. Для выполнения третьего уровня от кандидата требуется создания тестов мобильного приложения, а именно тестирование пользовательского интерфейса приложения и тестирование отдельного функционала приложения, в особенности общения со сторонним API. Для разработки тестов пользовательского интерфейса необходимо работать не с данными от стороннего сервиса, а с Mock данными, или данными «заглушками», в угоду скорости работы тестов.
Создайте экранные виджеты с акциями, которые пользователь отмечает в приложении. Виджет должен отображать графики выбранных бумаг. Если выбранных бумаг больше чем помещается в виджет, бумаги на виджете должны меняться с определенным промежутком времени на новые из выбранных, с анимацией данного процесса.