Отчетность о «чрезмерно ограниченных» членах - PullRequest
1 голос
/ 13 июня 2011

Я работаю над продуктом, который обладает высокой расширяемостью и имеет SDK. Что-то, что мы должны проверять, это то, что членство и класс видимости не больше, чем требуется. Чем выше видимость элемента сборки, тем больше «обслуживания» он получает.

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

Есть ли что-нибудь, что может это сделать? Я посмотрел на NDepend, но он очень сложный, и я не смог создать выражение CQL, которое бы делало то, что я хотел.

1 Ответ

1 голос
/ 13 июня 2011

Проанализируйте свой код с помощью NDepend, затем на панели « Правила и запросы кода через LINQ » см. Группу Видимость . Эта группа содержит несколько правил CQLinq, которые предупреждают о над областями типов и членов:

Visibility group

Эти правила включают в себя:

Такое правило может быть проверено в реальном времени в VisualStudio или в отчете, созданном в процессе ночной сборки CI . Выполнение такого правила вживую в VS выглядит так:

enter image description here

...