Почему существует возможность создания отдельной библиотеки классов для интерфейсов с бизнес-модулями? - PullRequest
1 голос
/ 12 декабря 2008

В wcsf можно создать бизнес-модуль с отдельной библиотекой классов только для интерфейсов, если я поставлю галочку в соответствующем поле / полях.

Какой смысл иметь отдельную библиотеку классов только для интерфейсов? Разве это не добавит ненужного раздувания к моему проекту и создаст высокую связь между двумя библиотеками классов? Что было бы не так с хранением интерфейсов в библиотеке классов, хранящей конкретные классы?

Спасибо.

1 Ответ

2 голосов
/ 12 декабря 2008

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

ImplementingClasses.dll <--- ClientClasses.dll </p>

Если вы поместите интерфейсы в отдельную сборку, это будет выглядеть примерно так:

ImplementingClasses.dll ---> Interfaces.dll <--- ClientClasses.dll </p>

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

...