2009-12-18 2 views
1

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

Теперь я хочу визуализировать результаты, используя мою визуализацию. Мне нужно преобразовать результаты в форму, которую принимает визуализация. Где я могу поместить эту функциональность? В модуле результатов, в модуле визуализации или в отдельном модуле?

Я чувствую, что создание отдельного модуля заставит меня сделать множество отдельных модулей для всех комбинаций вещей для визуализации и визуализации. Но мне также не нравится связывать два оригинальных модуля вместе ...

Есть ли какая-то распространенная практика для этого?

Дополнительная информация: Я использую C#

PS: Я обнаружил, что трудно найти ответ на это, потому что я не знаю, что название будет. Я также чувствую, что тот, кто имеет такую ​​же проблему, вероятно, не найдет этого вопроса. Поэтому, если кто-то из вас знает лучшее название для этого вопроса, не стесняйтесь менять название.

ответ

2

Обычный набор структур данных в отдельной сборке (и используется различными модулями) является хорошей практикой.

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

В большинстве случаев этого будет недостаточно, поэтому общая сборка является наилучшим способом продвижения ИМО.

+0

Мне нравится ваше представление о промежуточном формате, таким образом я могу позволить каждому модулю беспокоиться о преобразовании в и из этого промежуточного формата. Bedankt. –