Как я понимаю из документации Lift
обеспечивает Injector
черту (и ее реализации) для внедрения зависимостей следующим образом:
object MyInjector extends Injector {...}
val myThing: Box[Thing] = MyInjector.inject
К сожалению, это выглядит слишком навязчиво для меня. Я не хочу, чтобы мои бизнес-классы зависели от черты Injector
(и ее реализации). Я хотел бы сохранить свои бизнес-классы чистыми и свободными от каких-либо структурных зависимостей.
Spring
, например, не является навязчивым в этом смысле. То есть мне не нужно добавлять Spring
импорт в мои бизнес-классы для реализации внедрения зависимости.
Я что-то упустил?