Внедрение зависимости - кому принадлежит интерфейс?

Предполагая, что я хочу использовать инфраструктуру внедрения зависимостей в подходе AOP с целью создания модулей кода. Каков наилучший способ владения общими интерфейсами? Под собственностью я подразумеваю основную часть кода, на которую нужно ссылаться, чтобы использовать интерфейс.

Мое первое предположение состоит в том, что в AOP вы определяете библиотеку классов интерфейсов, распределенных по аспектам. например: company.aspect.logging.ILogger. Каждый модуль будет ссылаться на эту библиотеку и избегать того, чтобы какой-либо код, участвующий в реализации ILogger, также определял ILogger.

Лучшие практики?

Ответы на вопрос(2)

Ваш ответ на вопрос