Соглашения о написании кода на C# (Часть 1) - ArKonLab/C-group GitHub Wiki

Соглашения о написании кода предназначены для реализации следующих целей.

  • Создание согласованного вида кода, позволяющего читателям сосредоточиться на содержимом, а не на структуре.
  • Предоставление читателям возможности делать предположения, основанные на опыте, и поэтому быстрее понимать код.
  • Упрощение процессов копирования, изменения и обслуживания кода.
  • Предоставление лучших методик C#.

Соглашения об именах

  • В коротких примерах, не содержащих директив using, рекомендуется использовать полные указания для пространства имен. Если известно, что пространство имен импортировано в проект по умолчанию, не требуется указывать полные имена из этого пространства имен. Полные имена, если они слишком длинные для одной строки, можно разбить после точки (.), как показано в следующем примере.

var currentPerformanceCounterCategory = new System.Diagnostics. PerformanceCounterCategory();

  • Нет необходимости изменять имена объектов, созданных с помощью инструментов разработки Visual Studio, чтобы привести их в соответствие с другими соглашениями.

Соглашения о расположении

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

  • Использование параметров редактора кода по умолчанию (логичные отступы, отступы по четыре символа, использование пробелов для табуляции). Дополнительные сведения см. в разделе "Параметры", "Текстовый редактор", C#, "Форматирование".
  • Запись только одного оператора в строке.
  • Запись только одного объявления в строке.
  • Если отступ для дополнительных строк не ставится автоматически, необходимо сделать для них отступ на одну позицию табуляции (четыре пробела).
  • Добавление по крайней мере одной пустой строки между определениями методов и свойств. Использование скобок для ясности предложений в выражениях, как показано в следующем коде.

if ((val1 > val2) && (val1 > val3)) { // Take appropriate action. }

Соглашения о комментариях

  • Комментарий размещается на отдельной строке, а не в конце строки кода.
  • Текст комментария начинается с заглавной буквы.
  • Текст комментария завершается точкой.
  • Между разделителем комментария (/ /) и текстом комментария вставляется один пробел, как показано в следующем примере.

// The following declaration creates a query. It does not run // the query.

  • Вокруг комментариев не должно быть звездочек.