Этикет в программировании

Тема в разделе "Софт и инструменты", создана пользователем CLAY, 11 апр 2017.

  1. CLAY

    CLAY Member

    Сообщения:
    419
    Симпатии:
    5
    Этикет в программировании

    В этой статье предлагаю вашему вниманию несколько правил, которым стоит следовать при написании какого-либо кода.

    Мы с вами рассмотрим, какие бывают стили программирования, как стоит и не стоит называть переменные.

    Этикет в программировании

    Пролог

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

    Представьте себе ситуацию. Программист Ясав с планеты Ялмез пишет консольный таймер.

    Вот его код:

    Программа небольшая, но язык он знает не очень хорошо.

    Вот, он ее написал, нажал на кнопку скомпилировать и... Ошибка!

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

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

    В итоге Ясав оставляет эту программу недописанной.

    Через пол года Ясав неожиданно находит на жестком диске эту программу. Открывает ее и.. совершенно не понимает, для чего она нужна.

    Все это произошло потому, что Ясав не знал элементарных правил написания программ.

    Для того, чтобы вы не повторяли историю несчастного Ясава, я расскажу вам эти правила.

    Часть 1. Стили программирования

    В данной части я буду приводить примеры на языке C++. На другие языки программирования данные правила так же распространяются.

    Во всех примерах переменная a будет некой переменной целочисленного типа.

    1 стиль. Наиболее известный и рациональный

    Листинг : Пример if (a lt;= 10){ cout lt;lt; a; a++;

    }

    Данный стиль использовали такие известные люди как Брайан Уилсон Керниган и Деннис Ритчи - основатели языка C.

    Основная идея удобства заключается в экономии вертикального пространства, т.к. открывающая скобка "{" находится сразу после условия.

    2 стиль. Whitesmith

    Листинг : Пример if(a lt;= 10)

    { cout lt;lt; a; a++;

    }

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

    3 стиль. Стиль Алмена

    Листинг : Пример if(a lt;= 10)

    { cout lt;lt; a; a++;

    }

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

    4 стиль. Стиль GNU

    Листинг : Пример if(a lt;= 10)

    { cout lt;lt; a; a++;

    }

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

    Названия переменных

    Правило 1. Осмысленное название

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

    Так, например, если у в программе есть переменная, которая является ответом, назовите ее ans.

    Правило 2. Понятное и рациональное название

    Рассмотрим пример с той же переменной. Она заведомо является ответом.

    Не надо писать целиком и полностью слово answer. Это очень долго. При написании большого кода, очень не рационально использовать длинные переменные.

    В данном примере это не столь критично, а, например, переменную factorial уже писать долго.

    После такого замечания сразу хочется написать нашу переменную в таком виде : a.

    Так тоже неправильно, см. Правило 1.

    Правило 3. Использование больших и маленьких букв

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

    В теле программы используйте такой же регистр, какой и в описании переменной.

    Константы называйте большими буквами.

    Эти же правила относятся и к названиям функций.

    Пробелы вокруг символов

    Предположим, у вас есть какое-то длинное логическое или арифметическое выражение. Например:

    Листинг : Пример a+=a*b/c+a%b%c-b;

    Так писать нельзя ни в коем случае. Опять все сводится к неразборчивости вашего кода. Ведь гораздо удобнее и приятнее читать код, когда он написан вот так:

    Листинг : Пример a += a * b / c + a % b % c - b;

    Комментарии

    Комментарии играют существенную роль в программировании.

    Оставлять комментарии нужно по-принципу "чем больше, тем лучше, но в меру".

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

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

    Простые комментарии можно ставить как перед выполняемым оператором:

    Листинг : Пример

    // Вывод приветствия на экран cout lt;lt; "Hello world!" lt;lt; endl;

    Так и после, на этой же строке:

    Листинг : Пример cout lt;lt; "Hello world!" lt;lt; endl; // Вывод приветствия на экран

    Таким образом, если бы Ясав знал, что надо использовать комментарии при программировании, он бы и через два года без труда разобрался в своем коде.

    Эпилог

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

Поделиться этой страницей