Получение правильного уровня детализации интерфейса

В настоящее время я занимаюсь разработкой API, включая спецификацию ряда интерфейсов как абстракций, которые позже будут реализованы различными конкретными классами.

Как оказалось, я использую Java, но я думаю, что этот вопрос актуален для любого языка, который поддерживает аналогичную концепцию интерфейса.

Я заметил, что часто есть выбор между:

  • Создание большого интерфейса с полным набором методов
  • Создание нескольких интерфейсов, каждый из которых содержит подмножество полного диапазона методов (один конкретный класс, вероятно, должен будет реализовать несколько или все эти интерфейсы)

Что плюсы / минусы каждого подхода?

10
задан mikera 21 January 2011 в 14:20
поделиться