… Как же удобно рисовать наглядную структуру проекта, иерархию классов, в виде UML диаграмм.
Для этого хорошо подходит инструмент — LucidCharts: https://lucid.app/lucidchart/
Пример рефакторинга моего проекта TimeLogger — ниже.
Изначально здесь все было в функциональном стиле. с одним раздуты файлом из множества функций.
После рефакторинга , удалось составить грамотную схему по принципам SOLID.
Реализация проекта по такой архитектуре сделает его легко расширяемым в дальнейшем.
PS: сам проект скоро опубликую, как только сделаю бета-версию. Суть — логирование и аналитика своего потраченного времени, данные об активностях при этом импортируются из других программ (тайм-трекеров).
Текущая схема UML (до рефакторинга), от 18.01.2022:
Нужно:
-
все функции перенести в методы классов
-
сделать грамотную иерархию классов по принципам SOLID
-
нарисовать новую схему UML
-
реализовать нарисованное
UML после рефакторинга (переход на классы):
Нет Ответов