Skip to content

ZyFun/LoyaltyCards

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Xcode Swift IOS
Target Version
UIKit UIBezierPath UITableViewDiffableDataSource MVP GCD AutoLayout
URLSession REST ServerDrivenUI

Карты лояльности

Тестовое задание

Description

Подгрузка данных происходит с сервера, с помощью REST. Реализована пагинация и кастомный активити индикатор с анимацией. При запросе данных, сервер случайным образом генерирует: идеальный ответ, ответ с ошибкой или долго отвечает на запрос. Реализована обработка ошибок, с возможностью повторного запроса из алерта. Как только данные на сервере заканчиваются, подгрузка данных прекращается и запроса новых больше не происходит.

По нажатию на одну из кнопок, отображается стандартный алерт с информацией о том, какая кнопка была нажата, и id компании, к которой относится эта карточка лояльности.

Цвета карточек приходят с сервера случайным образом.

Описание используемых технологий

  • Активити индикатор нарисован с помощью UIBezierPath.
  • Многопоточность приложения построена на GCD.
  • Приложение написано на архитектуре MVP.
  • Работа с сетью происходит с помощью REST.
  • Вместо стандартного data source у теблицы используется UITableViewDiffableDataSource
  • Вёрстка итерфейса сделана полностью кодом с помощью AutoLayout
  • Весь дизайн взят из ТЗ и реализован с помощью pixel perfeсt, так как размеров и шрифтов предоставлено не было.

Installations

Clone and run project in Xcode 14 or newer

Screenshots

Demo

About

Тестовое задание

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages