Наш текущий проект столкнулся с проблемой циклической зависимости.Наша сборка бизнес-логики использует классы и статические методы из нашей сборки SharedLibrary.SharedLibrary содержит целый набор вспомогательных функций, таких как класс SQL Reader, перечислители, глобальные переменные, обработка ошибок, ведение журнала и проверка.
SharedLibrary требуется доступ к бизнес-объектам, но бизнес-объектам нужен доступв общую библиотеку.Старые разработчики решили этот очевидный запах кода, реплицировав функциональность бизнес-объектов в общей библиотеке (очень анти-СУХОЙ).Я провел целый день, пытаясь прочитать о моих вариантах решения этой проблемы, но я зашел в тупик.
Я открыт для идеи редизайна архитектуры, но только в качестве последнего средства.Итак, как же я могу получить библиотеку Shared Helper, которая может обращаться к бизнес-объектам, при этом бизнес-объекты все еще обращаются к библиотеке Shared Helper?