Избегайте префиксов или суффиксов классов, если:
- Это интерфейс:
IFilter
- Вам необходимо сообщить, что он участвует в схеме:
GaussianBlurStrategy
- (из marc_s) Вы создаете пользовательское исключение:
ImageDoesNotSupportFilterTypeException
- Иногда для связи, если что-то является абстрактным базовым классом:
FilterBase
Я разрываюсь на этом последнем. Мне не нравится видеть суффикс Base, но потребителю вашего API очень трудно понять, что он не может создать экземпляр Filter (без предварительной попытки) на основе имени. Я не люблю это, но я использую это соглашение.
EDIT
Согласно комментарию Джона Б. суффикс пользовательских делегатов с Handler
является обычным (FilterExecutedHandler(object sender, FilterEventArgs e);
). Хотя объявление делегата само по себе не является классом, оно может вызвать конфликт имен, поэтому, вероятно, следует указать здесь.