Посмотрите в сторону предметно ориентированного проектирования (DDD).
-
https://habr.com/ru/post/269589/
-
https://habr.com/ru/post/269893/
-
https://habr.com/ru/post/267125/
Хорошие книги по этой теме:
- Роберт Мартин "Чистый код Создание, анализ и рефакторинг"
- Роберт Мартин "Чистая архитектура"
- Стив Макконнелл "Совершенный код"
Если сможете найти исходники похожих на ваш проектов - изучите их,
посмотрите как там решались подобные задачи.
Еще очень хороший вариант - найти опытного разработчика и попросить его сделать review вашего кода, чтобы он объяснил вам как вот тут лучше сделать, а как там можно было сделать и почему именно так будет лучше.