Visual Studio 2010 Ultimate Layer Diagram - эквивалент с открытым исходным кодом? - PullRequest
5 голосов
/ 06 апреля 2011

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

Существует ли эквивалентная диаграмма с открытыми исходными кодами для Visual Studio 2010 Ultimate? Я проверил NDepend, однако, это для бизнес-использования, поэтому я не могу использовать бесплатную версию.

Редактировать: Возможно, я имею в виду диаграмму слоев? Какая бы диаграмма не использовалась для обеспечения того, чтобы определенные сборки не имели ссылок на другие сборки

И.Е.

Business assembly
Data assembly
Data.EntityFramework assembly

Data.EntityFramework реализует интерфейсы из сборки данных. Бизнес-сборка имеет только ссылку на сборку данных и имеет экземпляр из Data.EntityFramework через Unity или другой контейнер IoC.

У меня есть только Visual Studio 2010 Professional: (

1 Ответ

3 голосов
/ 05 мая 2011

Я не нашел ничего похожего на диаграммы слоев в VS 2010.

ConQAT позволит вам визуализировать и анализировать архитектурное соответствие, но не будет применять правила во время компиляции, как это могут делать диаграммы слоев. Кроме того, ConQAT, похоже, не работает с решениями VS 2010, что обидно, потому что похоже, что это может быть очень полезным инструментом. Он поддерживает решения VS 2008.

Жандарм - самое близкое совпадение с тем, что вы хотите, я думаю. Это основанный на правилах инструмент от команды Mono, и он может быть интегрирован в IDE или на ваш сервер сборки. Таким образом, это поможет вам определить и применять хорошие методы программирования, но не будет создавать для вас никаких диаграмм.

Из коробки у Жандарма есть множество правил для ловли плохих практик (длинные методы, отсутствие сплоченности, глубокие деревья наследования и т. Д.). Вам придется написать свои собственные пользовательские правила для обеспечения соблюдения ваших конкретных архитектурных ограничений - в вашем случае, путем перебора сборок и проверки ссылок.

Правила написаны на C # - вот пример .

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