вынес в хуки орм, но если захочу сменить орм, то получу боль, и куда в таком случае девать бизнес логику?
в отдельный слой или домен(это не про домен имен), ваша бизнес логика, должна в первую очередь что-то делать с данными. Она не должна знать откуда данные беруться или куда уходят. Этим должны заниматься отдельные модули. бизнес логика условно принимает некие данные или запрос обрабаты это, и возвращает ответ, но не пользователю или контролеру, а другому модулю. Так сказать промежуточному ПО, между вашей бизнес логикой и контролером. Условно это можно упростить и описать как: "Запрос пользователя" -> "Контролер АПИ" -> "Промежуточный модуль контролера" -> "Промежуточный модуль бизнес логики" -> "Бизнес логика" -> "Модуль Базы данных" -> "Бизнес Логика" -> И дальше по цепочке обратно. По сути это система, делает каждый отдельный модуль вашего приложения независимым, от других, что позволит вам сменить базу данных, без сильной боли переписывания половины приложения.
Обсуждают сегодня