/IFMOExample

IFMO 2019 iOS course accompanying repo

Primary LanguageSwift

Мобильный трекер задач студента ИТМО

Предпосылки

Студент за семестр должен сделать и сдать большое количество разных работ. Из-за разного их обьема и произвольных графиков сдачи они требуют планирования. Существующее приложение ИТМО не предоставляет такой функциональности, а существующие планировщики не учитывают специфику работы студента.

Идея

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

Интерфейс

Приложение состоит из трёх табов: "Актуальное", "Расписание" и "Настройки". Стартовый – "Актуальное". Дополнительные экраны логина и редактирования задачи открываются по необходимости.

Экраны

Актуальное

Показывает список текущих/ближайших задач по каждому курсу

Расписание

Показывает список предметов. По тапу на предмет открывается список всех работ по предмету. В шапке справа – кнопка, ведущая на экран создания новой работы. По тапу на работу открывается экран редактирования (экран создания с предзаполненными полями). По pull-to-refresh обновляет список предметов с сервера.

Настройки

Показывает текущий логин пользователя и позволяет выйти из приложения.

Экран логина

Позволяет ввести логин и пароль пользователя. Показывается на старте приложения.

Экран редактирования работы

Содержит поля (имя работы, тип, описание, цвет и сроки сдачи/выполнения) и кнопки "назад" и "сохранить". Данные сохраняются сразу после завершения ввода.

Работа с сетью

Приложение авторизует пользователя на сервере и загружает релевантное для него расписание предметов.

Работа с БД

Приложение сохраняет загруженное расписание и созданные задачи в локальную базу данных.