Какова правильная запись имен для классов, функций, переменных и т. Д. В c #? - PullRequest
4 голосов
/ 30 октября 2008

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

Например, если я напишу функцию для суммирования набора чисел. Должен ли я назвать это

Sum()
GetSum()
getSum()
get_sum()
AddNumbersReturnTotal()

Я знаю, что есть правильный способ сделать это, и все, что я прошу, - это ссылка на хороший окончательный источник: D

Закрыт как дубликат c # Стандарт кодирования / Лучшие практики

Ответы [ 7 ]

5 голосов
/ 30 октября 2008

Вы ищете StyleCop .

3 голосов
/ 30 октября 2008

Я согласен с разницей между вычислением и получением: get () следует использовать для значений, которые уже рассчитаны или иным образом тривиально получить.

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

3 голосов
/ 30 октября 2008

Классы должны быть в верблюжьей записи с первой заглавной буквой

public class MyClass

Функции и методы в C # должны действовать аналогичным образом, за исключением частных методов

public void MyMethod()
private void myPrivateMethod()

Переменные Я склонен делать немного по-другому:

Переменные-члены

private int _count;

Локальные переменные

int count;
1 голос
/ 30 октября 2008

Все вышеперечисленное.

Я полагаю, что в официальных руководствах по C # было бы указано, что он вызывает CalculateSum (), поскольку getSum () будет использоваться, если сумма является переменной экземпляра. Но это зависит от используемого стиля кодирования и от того, как написан любой существующий код в проекте.

0 голосов
/ 30 октября 2008

Имена методов - глаголы. Имена классов, полей и свойств являются существительными. В этом случае Sum может передаваться как глагол или как существительное ...

AddNumbersReturnTotal соответствует приведенному выше определению, но оно немного длинное. Из-за доброты к парню, который поддерживает мой код (обычно это я!), Я стараюсь избегать включения лишних слов в идентификаторы и стараюсь избегать слов, которые легко опечатывать.

0 голосов
/ 30 октября 2008

Sum(), если он публичный и выполняет работу сам.

GetSum(), если она общедоступна и получает информацию откуда-то еще.

sum () / getSum (), как указано выше, но для внутренних / частных методов.

(Хмм ... Это немного расплывчато, так как вы немного изменили значение "Сумма". Итак, давайте попробуем это снова.

XXX, если xxx - процесс (суммирование значений). GetXXX если ххх вещь. (сумма значений)

0 голосов
/ 30 октября 2008

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

...