Є проти Кан
Відповідно до рекомендацій конвенції Microsoft щодо іменування , і "Є", і "Може" є нормальними (і так само "має") як префікс булевого типу.
Простий англійською мовою "Є" буде використовуватися для ідентифікації чогось самого типу, а не того, що він може робити. Наприклад, IsFixed
, IsDerivedFrom
, IsNullable
все це можна знайти в CLR типів і методів. У всіх цих випадках "Є" супроводжується прикметником .
У той же час, «може» більш чітко вказує на можливість, наприклад CanEdit
, CanRead
, CanSeek
. У кожному з цих випадків може супроводжуватися дієсловом .
Оскільки "Підтримка" - це дієслово, я думаю, що у вашому випадку CanSupportContentType
краще.
Коротша альтернатива
З іншого боку, конвенції кажуть, що префікс необов'язковий. Більше того, такий тип аргументу в назві методу доцільний, оскільки розробник може бачити тип аргументу в intellisense. Отже, ви можете просто назвати свій метод Supports
і визначити його так:
public bool Supports(System.Net.Mime.ContentType contentType)
... що коротше і все одно чітко повідомляє про мету. Ви б назвали це так:
ContentType contentType = new ContentType("text/plain");
var someClass = new MediatorsClass();
bool ok = someClass.Supports(contentType);
Або як компроміс, можливо, це найкраще:
public bool CanSupport(System.Net.Mime.ContentType contentType)