Второе учебное приложение.
Улучшение заключается в том, что теперь лекарства можно распределять по разным аптечкам (домашняя, в автомобиле, в рюкзаке). В первой версии это был единый список. А так же код стал значительно чище и лучше по сравнению с прошлой реализацией.
Затраченное время – сюда не пишу, но смогу сказать точное, установил таймер и отслеживаю затраченное время на каждую задачу, которое записываю в Jira.
- Многопоточность приложения построена на GCD.
- Стараюсь использовать все принципы чистого кода, DRY, KISS, YAGNI, SOLID и SOA (Всё еще не идеально. I'm just learning 😅).
- Приложение написано на архитектуре VIPER. Пока кривенько, но постепенно переписывается. Это первый проект на этой архитектуре. В этой архитектуре у данного приложения нет необходимости, я использую её только для практики и закрепления навыков. Понимаю, что для данного приложения вполне было бы достаточно MVC или MVP, к примеру с координатором. Но с развитием, простые модули начал писать на MVP.
- Для хранения данных используется CoreData.
- Для более удобной работы с таблицами с CoreData применяется NSFetchedResultsControll
- Код частично покрыт Unit тестами.
- Настроен CI Xcode Cloud для автоматического запуска тестов.
- Частично, интерфейс написан кодом с помощью AutoLayout.
- Вместо Storyboard использую XIB файлы. 1 экран – 1 XIB. В дальнейшем всё будет переделываться под верстку кодом.
- Для подключения фреймворков используется CocoaPods
- Часто используемый в разных проектах код, вынесен в SPM
- Используется фреймворк Swiftlint с кастомными настройками, рекомендованными Тинькофф Образованием + дополнительно своя конфигурация с более жесткими требованиями к стилю кода.
- Весь дизайн приложения был взять из головы.
--.--.2024 v.1.4.0 Исправления:
- При создании нового лекарства, в поле ввода количества появлялась цифра 0.0. Теперь на этом месте пустое поле
- Исправлена ошибка, при которой могли приходить фантомные уведомления с несуществующим лекарством.
- Оптимизирова логика работы с уведомлениями. 17.10.2024 v.1.3.0
Новые возможности: - Добавлены новые поля ввода информации о лекарстве - Добавлены уведомления о действиях или ошибках
Изменение UI:
- Переработан дизайн экрана детальной информации о лекарстве
- Обновлен дизайн темной темы
Исправления:
- Исправлена опечатка на карточке лекарства
- Исправлена ошибка, из-за которой на карточке лекарства могло появится много знаков после запятой у количества лекарств.
09.01.2024
Новые возможности:
- Добавлена синхронизация с iCloud
12.10.2023
Новые возможности:
- Добавлено боковое меню
- Добавлена возможность настройки сортировки
- Добавлена возможность выбора времени доставки уведомлений
Исправления:
- Исправлен алерт, согласно гайдлайнам эпл
- Исправлена ошибка из-за которой приложение падало, когда шаг установки дозы был отрицательным или текстом
Изменение UI:
- Переработан дизайн карточек
Другие изменения:
- Увеличен таргет iOS до 15
20.10.2022
- Обновлен дизайн приложения
- Добавлена возможность поиска лекарств и аптечек
- Добавлена анимация при запуске приложения
- Добавлено отображение о просроченных лекарствах внутри аптечки
07.09.2022
- Добавлены уведомления о просрочке лекарств
Clone and run project in Xcode 15 or newer