Какие правила FxCop вы больше всего цените? Какие правила выделяют лучшие подводные камни .Net?
Какие ваши любимые правила FxCop?
Ответы (5)
Мои любимые правила FxCop - это те, которые не вызывают ошибок при компиляции кода.
Какие правила FxCop вы больше всего цените?
Тот, который я собираюсь написать, чтобы не дать разработчикам использовать #defines вместо конфигурации (Требуется цитата: использование препроцессора - плохая ОО-практика). И мне нравятся почти все правила оформления.
Я считаю, что некоторые правила использования и дизайна особенно полезны. Я никогда не могу вспомнить подробности того, как реализовать интерфейсы IDisposable или ISerializable, поэтому я ценю мягкие напоминания из таких правил:
- правильно реализовать IDisposable
- Одноразовые поля должны быть удалены
- Правильно вызвать GC.SuppressFinalize
- правильно реализовать ISerializable
- Реализовать конструкторы сериализации
- Отметьте ISerializable типы атрибутом SerializableAttribute
Те, которые я ценю больше всего и которые подчеркивают подводные камни, - это Правила производительности.
Это не правило FxCop, а правило языка запросов кода NDepend, но тем не менее мне нравится Правило CQL:
// <Name> Make sure refactored and added methods are covered by tests</Name>
WARN IF Count > 0 In SELECT METHODS WHERE
PercentageCoverage < 100
AND (CodeWasChanged OR WasAdded)