… Как же удобно рисовать наглядную структуру проекта, иерархию классов, в виде UML диаграмм.

Для этого хорошо подходит инструмент — LucidCharts: https://lucid.app/lucidchart/

Пример рефакторинга моего проекта TimeLogger — ниже.

Изначально здесь все было в функциональном стиле. с одним раздуты файлом из множества функций.

После рефакторинга , удалось составить грамотную схему по принципам SOLID.

Реализация проекта по такой архитектуре сделает его легко расширяемым в дальнейшем.

PS: сам проект скоро опубликую, как только сделаю бета-версию. Суть — логирование и аналитика своего потраченного времени, данные об активностях при этом импортируются из других программ (тайм-трекеров).

Текущая схема UML (до рефакторинга), от 18.01.2022:

Нужно:

  • все функции перенести в методы классов

  • сделать грамотную иерархию классов по принципам SOLID

  • нарисовать новую схему UML

  • реализовать нарисованное

UML после рефакторинга (переход на классы):

Диаграмма: https://lucid.app/lucidchart/410ec1f8-88a9-4642-9f20-0588bf6cd3a7/edit?beaconFlowId=7FD3D0B26489AC4B&invitationId=inv_66804792-6614-4d5a-83f5-a6bc4f0aa29d&page=HWEp-vi-RSFO#

Tags

Нет комментариев

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.