Соглашения об именовании:Рекомендации по использованию глаголов / существительных и грамматики английского языка
-
03-07-2019 - |
Вопрос
Кто-нибудь может указать мне на сайт или дать мне немного мудрости о том, как вы выбираете имена для интерфейсов, классов и, возможно, даже методов и свойств, относящихся к тому, что делает этот объект или метод?
Это специально для разработки Microsoft, поэтому Java-esque "doGet" и так далее на самом деле не используются, однако некоторые общие правила, которые преодолевают языковые барьеры, должны (я бы подумал) существовать.
Может помочь пример:У меня есть 4 варианта имен для интерфейса:
IGroupedItem
IGroupableItem
IDataEntity
IGroupedEntity
Все они содержат прилагательное и существительное или просто существительное.Глядя на .NET framework, кажется, что для этого должен быть какой-то набор правил для согласованности?Помимо очевидных глаголов, обозначающих методы.
Редактировать: Хотя этот пример представляет собой интерфейс, я не ограничиваю его только интерфейсами.Общее руководство гласит, что классы - это существительные, методы - глаголы, свойства - существительные.Я полагаю, что я имею в виду выбор синонима.Является ли использование "Сущности" везде неправильным
Решение
Посмотрите на Статьи MSDN для указания именования.Короче говоря:
- Используйте существительные для имен классов и свойств (это очевидно)
- Имена интерфейсов начинаются с I и используют существительные и / или прилагательные для описания поведения
- Используйте глаголы в названиях методов для описания действия
Для вашего примера - IGroupableItem.
Другие советы
Интерфейсы - это то, на что способен класс. Не то, чем он является , а тем, что он может делать .
IGroupableItem
Другие имена описывают, что является или является слишком расплывчатым, чтобы быть полезным. Р>
В частности, "IDataEntity" в значительной степени бессмысленно. В конце концов, все является объектом данных.
В MSDN есть статья только по Правилам именования интерфейсов это может вам помочь. Если вам нужны соглашения об именах, отличные от интерфейсов, наряду со многими другими рекомендациями по именованию и проектированию, вы можете найти их и в MSDN.
Это тот же материал, что и в ответе Споди, но Руководство по разработке для класса. Разработчики библиотек в основном отлично справляются с наименованиями и многими другими. и многое другое.
Есть хорошая статья Создание неправильного кода выглядит неправильно Джоэл Спольски. В нем рассказывается о не очень популярном, но очень удобном соглашении об именах.
Наряду с руководящими принципами MSDN, есть документ C # Standards Codes от IDesign Джувала Лоуи, который весьма полезно (не знаю, если / насколько это отличается от MSDN).
Попробуйте это ....
Главный сайт: http://www.ssw.com.au/ SSW / стандарты / Default.aspx
Правила Кодекса: http://www.ssw.com.au/ssw /Standards/Rules/RulestoBetterCode.aspx р>