Следует ли разделять экспортеров и импортеров на несколько интерфейсов - PullRequest
0 голосов
/ 21 марта 2019

Контекст / вариант использования:

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

На данный момент нет функции импорта / экспорта для этих данных.Кроме того, нет никаких других вариантов использования, кроме предполагаемой передачи, которая включала бы либо экспорт, либо импорт этих данных.(Но как всегда: кто знает?)

Данные довольно просты.Теоретически, маленького csv-файла может быть достаточно, поэтому здесь мы не говорим о сложных файлах.

Вопрос:

У меня в основном два "основных" метода,ImportData(..) и ExportData(..), которые я определяю интерфейсом.Поскольку все кажется таким простым и изолированным, я мог бы определить IDataIO (или около того) интерфейс, который определяет оба метода.

Но: не будет ли это нарушать принцип разделения интерфейса?Должен ли я определить два отдельных интерфейса для импорта и экспорта, содержащих по одному методу каждый?Будет ли это чрезмерно спроектировано?

Есть ли какие-либо аргументы, которые делают это больше, чем "вопрос о башне из слоновой кости"?

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