https://github.com/hansoloch/bmstu_ppo
https://github.com/hansoloch/bmstu_ppo
bmstu-iu7 kotlin
Last synced: 10 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/hansoloch/bmstu_ppo
- Owner: HanSoloCh
- Created: 2025-03-05T19:19:20.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-05-29T12:21:03.000Z (about 1 year ago)
- Last Synced: 2025-05-29T12:29:09.610Z (about 1 year ago)
- Topics: bmstu-iu7, kotlin
- Language: Kotlin
- Homepage:
- Size: 1.4 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
## Лабораторные работы по курсу "Проектирование программного обеспечения"
### Предисловие
- Семинарист и преподаватель по ЛР - Жаров Семен Владимирович
- Если сдавать лабораторные работы в срок, то все ЛР сдавать необязательно
### Оглавление
- [__Лр №1__](https://github.com/HanSoloCh/BMSTU_PPO/tree/main/lab_01) - Анализ (Картинки устарели, возьмите соответствующие в папке с курсовой работой);
- [__Лр №2__](https://github.com/HanSoloCh/BMSTU_PPO/tree/main/lab_02) - Проектирование;
- __Лр №3__ - __Лр №7__ - в качестве задания нужно было поэтапно реализовывать различные моддули приложения:
- __Лр №3__ - реализован моддуль domain: UseCase-ы, модели, тесты, интерфейсы репозиториев;
- __Лр №4__ - реализован моддуль data: реализации репозиториев, тесты;
- __Лр №5__ - реализован моддуль api: реализовано api (роуты) и [__Swagger__](https://github.com/HanSoloCh/BMSTU_PPO/tree/main/lab_05);
- __Лр №6__ - реализовано логирование: добавлено логирование в api, и конфигурационный файл
- __Лр №7__ - реализован моддуль ui: реализован пользовательский интерфейс;
- [__Лр №8__](https://github.com/HanSoloCh/BMSTU_PPO/tree/lab_08/) - Вертикальный срез: добавлена новая модель - язык. В таблице книг поле язык теперь FK на эту сущность, также добавлено поле "второстепенные языки".
### Заметки
- Лр 6: Жаров просит сделать так, чтобы конфигурационные файлы подтягивались без персборки, но сделать это проблематично, потому что gradle зашивает их в jar файлы. Пришлось прописывать в build.gradle.kts, чтобы он не трогал эти файлы, а затем указывать через аршументы откуда их подтягивать. Этих изменений нет в репозитории, потому что они мне не нравились, дописать это несложно;
- Лр 7: Делал уже второпях, есть много мест для улучшений, декомпозиции и тд. Были добавлены новые route в api, но в Swagger их не выносил;
- Лр 8: В принципе route к таблице с языками работают (в Swagger этих изменений нет), миграцию до конца не проводил ([sql файл для миграции](https://github.com/HanSoloCh/BMSTU_PPO/tree/lab_08/lab_08/migration.sql)), поэтому тесты в data слое могут отваливаться, route к таблице с книгами не проверял.