Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Насколько актуален подход с интерфейсами в бизнеслогике/DAO при работе со Spring? / 2 сообщений из 2, страница 1 из 1
11.11.2014, 13:09
    #38801950
junixar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Насколько актуален подход с интерфейсами в бизнеслогике/DAO при работе со Spring?
Со времён появления спринга актуален был подход, когда описывается интерфейс в бизнес логике (как контракт) и затем делается его реализация. Соответственно все работают с интерфейсом, а в контексте описана конкретная имплементация, которая будет создана в контейнере.

Во всех проектах, в которых я участвовал, была только одна реализация. Я говорю про уровень DAO и сервисов. Другие реализации могли быть только в целях тестирования, в виде mock объектов или например в целях тестирования производительности с разными подходами или разными БД.

Сейчас даже в целях тестирования легко и просто с mockito можно оборачивать классы безо всяких интерфейсов и получать требуемое поведение. Proxy объекты в runtime тоже не проблема.

Механизмы рефакторинга в современных IDE также позволяют легко менять в коде всё, что нужно.

Получается, что если реализация какого-то интерфейса в приложении только одна, то вроде как и интерфейс теряет смысл. Кроме того, что он чётко определяет контракт взаимодействия. Или?
...
Рейтинг: 0 / 0
11.11.2014, 13:16
    #38801971
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Насколько актуален подход с интерфейсами в бизнеслогике/DAO при работе со Spring?
junixar,

Ну, первопричиной надобности в интерфейсах был всё же АОП реализованый через JDK Proxy. Замена реализации это очень вторичная надобность. И, как верно замечено, в большинстве случаев, бесполезная. Поэтому не нужно плодить дополнительных сущностей без необходимости.
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Насколько актуален подход с интерфейсами в бизнеслогике/DAO при работе со Spring? / 2 сообщений из 2, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]