На схеме отмеченной галочкой видимо изображен верный вариант. Но разве в этом случае не зависит ли класс B от интерфейса, а следовательно и от модуля верхнего уровня, от которого зависеть не должен? Пользуясь вашем же критерием зависимости, если класс B перенести, нужно будет переносить и интерфейс.
Из википедии: "Модули верхних уровней не должны зависеть от модулей нижних уровней. Оба типа модулей должны зависеть от абстракций". Оба типа модулей отдельно, а абстракции отдельно.
На схеме отмеченной галочкой видимо изображен верный вариант. Но разве в этом случае не зависит ли класс B от интерфейса, а следовательно и от модуля верхнего уровня, от которого зависеть не должен? Пользуясь вашем же критерием зависимости, если класс B перенести, нужно будет переносить и интерфейс.
Из википедии: "Модули верхних уровней не должны зависеть от модулей нижних уровней. Оба типа модулей должны зависеть от абстракций". Оба типа модулей отдельно, а абстракции отдельно.