Общие требования к построению конструкций встроенного языка
Сегодня довольно простой стандарт, один из первых, но не менее важный, особенно для новичков!
1️⃣ Первое на что хотелось бы обратить внимание, это на логические выражения в которых не нужно писать "= Истина" или "= Ложь", если мы заведомо знаем тип переменной или возвращаемого значения, это излишне.
#std441
4. Логические выражения и логические значения (например, результат функции, возвращающей логическое значение, переменные типа Булево и пр.) не следует проверять путем сравнения с литералами Истина и Ложь.
Правильно:
Если ЭтоНовый() Тогда
Неправильно:
Если ЭтоНовый() = Истина Тогда
2️⃣ А вот второй момент встречается довольно часто, и кажется про это знают далеко не многие. Если придерживаться этому стандарту, то при отладке сложного кода и моделировании различных значений, это будет упрощать работу.
#std441
5. В тех случаях, когда требуется сравнивать результаты каких-либо выражений, следует предварительно присваивать результаты этих выражений промежуточным переменным, и сравнивать уже сами эти переменные.
Правильно:
Ответ = Вопрос(НСтр("ru = 'Данные еще не записаны. Записать?'"), РежимДиалогаВопрос.ДаНет,, КодВозвратаДиалога.Да);
Если Ответ = КодВозвратаДиалога.Да Тогда
...
Благодаря этому, можно в момент отладки изменить значение переменной "Ответ" на необходимое, или добавить его в табло.
P.S. Полное описание стандарта по ссылке в начале поста
#ЧёПоСтандартам #std441