Хорошие рекомендации по именованию свойств bool - PullRequest
7 голосов
/ 14 января 2011

Обычно, если есть свойство, которое получает / устанавливает значение для состояния, я использую «Is», например:

Visibility:
.IsVisible

Но что лучше использовать для свойств, которые получают / устанавливают действия? Как:

Casting shadows:
.CastShadows

Должен ли я использовать:

.DoesCastShadows

Есть ли лучшая альтернатива?

Ответы [ 3 ]

12 голосов
/ 14 января 2011

Большая часть библиотеки использует что-то вроде .IsShadowCastingEnabled.

Например, UIElement определяет IsInputMethodEnabled и IsHitTestVisible .

Приятно то, что IsXXX очень ясно дает понять, что это логическое свойство.

5 голосов
/ 14 января 2011

Я думаю CastsShadows будет работать. Обратите внимание s после Cast. Это параллельно с Is в том смысле, что оба начинаются с глаголов в единственном числе (и Does звучит довольно странно).

1 голос
/ 20 января 2011

Я предпочитаю использовать "Is" для свойств только для чтения; Я бы, вероятно, использовал что-то вроде «EnableShadows» в качестве свойства. Из названия может быть не сразу видно, что это свойство, а не метод, но при чтении кода это должно быть очевидно, а при написании кода Intellisense должно указывать, что это свойство. Кроме того, если кто-то пытается использовать EnableShadows в качестве метода, компилятор должен пожаловаться.

...