Поделиться через


Общие соглашения об именовании

В общих соглашениях об именовании обсуждается выбор наиболее оптимальных имен для элементов библиотек. Эти рекомендации относятся ко всем идентификаторам. В дальнейших разделах обсуждается именование особых элементов, таких как пространства имен или свойства.

Выбор слов

Выбирайте легко читаемые имена идентификаторов. Например, свойство "HorizontalAlignment" является более читаемым по-английски, чем "AlignmentHorizontal".

При выборе между удобочитаемостью и краткостью отдавайте предпочтение удобочитаемости. Имя свойства "CanScrollHorizontally" предпочтительнее, чем "ScrollableX" (неясная ссылка на ось X).

Не используйте подчеркивания, дефисы и другие не буквенно-цифровые знаки.

Не следует использовать венгерскую нотацию.

Венгерская нотация заключается в использовании префикса в идентификаторах для кодирования некоторых метаданных параметра, таких как тип данных идентификатора.

Избегайте использования идентификаторов, конфликтующих с ключевыми словами широко используемых языков программирования.

В то время как в CLS-совместимых языках должен быть предусмотрен способ использования ключевых слов в качестве обычных слов, лучше не вынуждать разработчиков узнавать, как это делается. В документации к большинству языков программирования содержится список используемых языком ключевых слов. В следующей таблице приведены ссылки на справочную документацию для некоторых широко используемых языков программирования.

Язык

Ссылка

C#

Справочник по C#

C++

C++ Language Reference

Visual Basic

Справочник по языку Visual Basic

Сокращения и акронимы

В общем случае в именах не должны использоваться сокращения или акронимы. Это приводит к ухудшению читаемости имен. Кроме того, достаточно трудно понять, широко ли используется акроним.

Правила использования прописных букв в сокращениях см. в разделе Соглашения о написании прописными буквами.

Не используйте аббревиатуры или сокращения как часть имени идентификатора.

Например, предпочтительнее использовать OnButtonClick, чем OnBtnClick.

Не используйте акронимы, которые не являются общепринятыми, но даже общепринятые акронимы следует использовать только в случае необходимости.

Имена, зависящие от языка

Для имен типов предпочтительнее использование семантически значимых имен, чем ключевых слов конкретного языка. Например, имя "GetLength" предпочтительнее, чем "GetInt".

В редких случаях, когда идентификатор не имеет семантического значения за пределами своего типа, используйте имя универсального типа среды CLR, а не имя, принятое в конкретном языке.

Например, метод, преобразующий данные в значения типа Int16, должен иметь имя ToInt16, а не ToShort, так как Short является именем типа для Int16 в определенных языках.

В следующей таблице приведены имена типов, используемые в наиболее распространенных языках программирования и их аналоги в среде CLR.

Имя типа в C#

Имя типа в Visual Basic

Имя типа в JScript

Имя типа в Visual C++

Представление Ilasm.exe

Имя типа в среде CLR

sbyte

SByte

sByte

char

int8

SByte

byte

Byte

byte

unsigned char

unsigned int8

Byte

short

Short

short

short

int16

Int16

ushort

UInt16

ushort

unsigned short

unsigned int16

UInt16

int

Целое число

int

int

int32

Int32

uint

UInt32

uint

unsigned int

unsigned int32

UInt32

long

Long

long

__int64

int64

Int64

ulong

UInt64

ulong

unsigned __int64

unsigned int64

UInt64

float

Single

float

float

float32

Single

double

Double

double

double

float64

Double

bool

Boolean

логический

bool

bool

Boolean

char

Char

char

wchar_t

char

Char

string

Строка

string

Строка

string

Строка

object

Объект

object

Объект

object

Объект

В редких случаях, когда идентификатор не имеет семантического значения, а тип параметра неважен, предпочтительнее использование обычных имен, таких как значение или элемент, чем повторение имени типа.

Фрагменты — © Корпорация Майкрософт (Microsoft Corp.), 2005. Все права защищены.

Фрагменты — © Addison-Wesley Corporation. Все права защищены.

Для дополнительной информации о разработке руководящих принципов, смотрите "руководства по разработке рамок: Конвенций, идиомы и шаблоны для повторного использования.NET библиотек"книга, Кшиштоф Cwalina и Брэд Абрамс, опубликованных Addison-Wesley, 2005 года.

См. также

Другие ресурсы

Руководство по разработке библиотек классов

Правила именования