Тестовое задание на позицию iOS Developer.
Время выполнения: не более 5 рабочих дней
Если вдруг возникли вопросы, то можно задать их написав мне на nikita.asabin@flatstack.com
Приложение представляет из себя список стран и их детальное описание. Данные подгружаются постранично и находятся в JSON файлах pageN.json, где N-номер страницы. Начать нужно с page1.json . URL к следующей странице хранится в JSON файле в параметре "next".
Детальный дизайн с ассетами находится в скетч файле тут Тестовое задание для iOS
Список подгруженных стран должен сохранятся локально. В случае отсутствия интернета отображать закешированые данные.
Список стран
- Необходимо отобразить список стран
- Экран должен соответствовать прикрепленному дизайну
- Реализовать автоматическую подгрузку стран (пагинация)
- Предусмотреть динамический размер ячеек
- Добавить возможность обновления списка ( pull to refresh )
Детальная информации о стране
- Необходимо отобразить детальную информацию о стране
- Экран должен соответствовать прикрепленному дизайну . Дополнительно можно сделать в соотвествии с данным дизайном
- В случае если фото отсутствует - отобразить флаг выбранной страны
Фото в JSON файле находится в image или в countryInfo:{images: [] }
Basic
- Use Swift
- Your choice for architecture (MVC, MVP, MVVM, Viper)
- Storyboard or XIBs
- Networking
- Store local data
- Follow Gitflow
Advanced*
- Store local data with Realm or Core Data
- Do not use third party frameworks for image loading
- Unit tests
- UI tests
*Следование пунктам Advanced будет плюсом на этапе собеседования.
Код поместить в свой репозиторий на GitHub.
В README.md должны быть записаны инструкции по запуску проекта.