ГлавнаяТребования к написанию кода

Требования к написанию кода

Всегда пишите код так, будто сопровождать его будет
склонный к насилию психопат, который знает, где вы живете.
Мартин Голдинг

1. Нужно комментировать код

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

2. Комментарии должны быть по делу

Не должно быть избыточности – только суть.
 

3. Нужно избегать мусора в коде

Закомментированное «Сообщить("Ураааааааааа");» и подобные вещи – мусор. Если есть кусок кода, который сейчас не нужен, но в дальнейшем может понадобиться, его можно закомментировать и оставить – это не мусор, а резерв.
 

4. Соблюдать отступы, пробелы, следить за регистром символов (особенно в конструкциях, состоящих из нескольких слов)

Плохо Хорошо

если (а>б) и (б<>0) тогда
сообщить("а больше б");
Конецесли;

Если (А > Б) И (Б <> 0) Тогда
Сообщить("А больше Б");
КонецЕсли;

 
Подробнее:

  • операторы, процедуры и функции нужно писать с большой буквы;
  • если они состоят из нескольких слов, то каждое составляющее слово нужно писать с большой буквы (например: КонецЕсли, КонецЦикла, КонецПопытки);
  • переменные нужно писать с большой буквы;
  • если они состоят из нескольких слов, то каждое составляющее слово нужно писать с большой буквы (например: ОстатокНаНачало, ТекущаяСтрока, ПредыдущийЭлемент);
  • операторы языка и знаки сравнения, присвоения должны отделяться одинарными пробелами («А > Б» — хорошо; «А>Б» — плохо; «А   > Б» — плохо);
  • точка с запятой, скобка или последний символ оператора должны заканчивать строку – после них не должно быть пробелов;
  • нужно соблюдать отступы.

 

5. Нужно отделять пустыми строками смысловые блоки кода

В примере можно выделить 4 смысловых блока:

  • объявление переменных;
  • цикл;
  • вычисление необходимого значения;
  • возврат значения.


Функция ПолучитьЗначениеИзКолонки(Колонка, СтрокаТекста)
 
НачалоЗначенияИзКолонки = 1;
ДлинаСтроки = СтрДлина(СтрокаТекста);
 
Для Н = 1 По Колонка 1 Цикл
НачалоЗначенияИзКолонки = Найти(Сред(СтрокаТекста, НачалоЗначенияИзКолонки, ДлинаСтроки), "|") + НачалоЗначенияИзКолонки;
КонецЦикла;
 
КонецЗначенияИзКолонки = Найти(Сред(СтрокаТекста, НачалоЗначенияИзКолонки, ДлинаСтроки), "|") — 1;
 
Возврат (Сред(СтрокаТекста, НачалоЗначенияИзКолонки, КонецЗначенияИзКолонки));
 
КонецФункции

 

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

Плохо Хорошо
Орг Организация
Склад, Склад1 СкладОтправитель, СкладПолучатель
Ост Остаток
Контра Контрагент
ЕстьД ЕстьДоговор
СпрД1 СправочникДоговоров
СправН СправочникНоменклатуры

 

7. Нужно выравнивать реквизиты на форме. Кривые интерфейсы недопустимы

Плохо:

Требования к написанию кода

Хорошо:

Требования к написанию кода

 

8. Нужно отмечать места вмешательства в чужой код

Нужно отметить каждое место в коде, где пришлось что-то изменить. Эта метка должна быть всегда одинаковой, чтобы ее можно было легко найти.

Примеры.

Исключение строки кода:
//−−Остатки = ПолучитьОстаткиПоСкладу(СкладГотовойПродукции); Антон Колимбетов 04.01.2012

Исключение блока кода:
//−−Для Н = 1 По 7 Цикл Антон Колимбетов 04.01.2012
//Сообщить(Н);
//−−КонецЦикла;

Добавление строки кода:
Остатки = ПолучитьОстаткиПоСкладуДоработано(СкладГотовойПродукции);//++ Антон Колимбетов 04.01.2012

Добавление блока кода:
//++ -> Антон Колимбетов 04.01.2012
Для Н = 1 По 7 Цикл
Сообщить(Н);
КонецЦикла;
//++ <-

Теперь по плюсам, минусам или имени всегда можно будет найти правки.
 

9. Нельзя заменять чужой код своим

Удалить чужой код и написать на его месте свой – недопустимо. Чужой код нужно закомментировать, свой добавить, отмечая оба действия, как описано в предыдущем пункте.

Обсуждение закрыто.