В зависимости от интерфейсов вместо сервисов фреймворка - PullRequest
0 голосов
/ 25 сентября 2018

Например, я использую SomeFramework с mechanism для работы с контроллерами / действиями.И я хочу написать MyService некоторые методы, которые зависят от имя текущего действия .

Очевидно, я могу сделать отношение в MyService на MechanismInterface, предоставленном SomeFramework.

Но будет ли лучше, если я создам интерфейс ActionResolver и его реализация SomeFrameworkActionResolver?

SomeFrameworkActionResolver будет зависеть от MechanismInterface, но MyService будет зависеть от ActionResolver интерфейс.

1 Ответ

0 голосов
/ 25 сентября 2018

Я могу сделать отношение в MyService на MechanismInterface, предоставленном SomeFramework.

Это нехорошо, потому что MechanismInterface все еще принадлежит к пакету SomeFramework, поэтому MyService все еще зависит напрямую от пакета SomeFramework.

Будет ли лучше, если я создам интерфейс ActionResolver и его реализацию SomeFrameworkActionResolver?

Да, намного лучше.Просто поместите интерфейс ActionResolver, принадлежащий тому же пакету с MyService, и введите SomeFrameworkActionResolver, принадлежащий другому пакету.Теперь MyService и SomeFramework полностью отделены.Когда вам нужно использовать новый SomeFramework2, пакет MyService остается стабильным.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...