Разработка стандарта кодирования

May 24, 2012

Если вам необходимо разработать стандарт кодирования обязательно прислушайтесь к совету Герба Саттера и Андрея Александреску. Этот совет я нашел в книге по C++, но его можно применять к любому языку программированию и к жизни вообще:

Скажем кратко: не мелочитесь.
Герб Саттер, Андрей Александреску
Стандарты программирования на C++ (Глава 0. Что не следует стандартизировать)

Чтобы стало более понятно приведу еще несколько выдержек:

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

По правде говоря Герб и Андрей очень сильно рискуют, говоря, что количество пробелов в отступе не важно. Это острая тема и нужно обладать сильным духом, чтобы затронуть ее на вечеринке с коктелями. В C++ существует 3 фундаментальные школы: 8 пробелов — кернел си хакеры, такой огромный отступ удерживает от вложенности больше трех, 4 пробела — классика С++, 2 пробела — неофиты. На прошлой работе проблему размера стандартного отступа разрешили с изяществом Александра Македонского — отступ был 3 пробела. Для крупных проектов, где большая вложенность все же встречается — это на удивление удобно.

И еще одна цитата, моя любимая (жирным выделил я):

1
2
3
4
5
6
7
8
9
10
11
12
// Размещение фигурных скобок
void using_k_and_r_style() {
// ...
}
void putting_each_brace_on_its_own_line()
{
// ...
}
void or_putting_each_brace_on_its_own_line_indented()
    {
// ...
    }

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

Итак, не мелочитесь!

comments powered by Disqus