|
Зачем такая конструкция? Если Истина И... Если Ложь ИЛИ ... ? | ☑ | ||
---|---|---|---|---|
0
RomaH
naïve
11.09.20
✎
09:07
|
Если Истина
И ЗначениеЗаполнено(ЭтотОбъект.Ссылка) И Не ЗначениеЗаполнено(ЭтотОбъект.Ссылка.Реквизит) Тогда Если Ложь Или ЭтотОбъект.Реквизит1 Или Не ЭтотОбъект.Первичный И ТипЗнч(ЭтотОбъект.Реквизит2 <> Тип("Число") Тогда Возврат; КонецЕсли; КонецЕсли; на результат не влияет - наглядность? |
|||
1
craxx
11.09.20
✎
09:08
|
(0) судя по всему вместо ИСТИНА и ЛОЖЬ когда-то были другие выражения, а тому кто переписывал было лень переформатировать строку
|
|||
2
dka80
11.09.20
✎
09:10
|
Это заглушка для тестирования
|
|||
3
RomaH
naïve
11.09.20
✎
09:11
|
поискал глобально - в этой конфе не одна такая строчка ... т.е., ИМХО, это "стиль автора"
|
|||
4
RomaH
naïve
11.09.20
✎
09:11
|
(2) а как применять?
|
|||
5
вым
11.09.20
✎
09:12
|
в отладке удобно использовать , а при работе уже "Истина" заменяется своими условиями
|
|||
6
dka80
11.09.20
✎
09:12
|
Хотя, может быть, это на случай Неопределено
Например, Если Переменная... При значении Переменная=Неопределено выдаст ошибку Если Истина И Переменная... При значении Переменная=Неопределено уже не выдаст |
|||
7
RomaH
naïve
11.09.20
✎
09:14
|
(6)
Преобразование значения к типу Булево не может быть выполнено {ВнешняяОбработка.ОбновитьСписокПользователейИСертификатов.Форма.Форма.Форма(272)}: Если Истина И Условие Тогда |
|||
8
s111
11.09.20
✎
09:14
|
(2) +1. я иногода ставлю 1=1 или 1=2)
|
|||
9
Ботаник Гарден Меран
11.09.20
✎
09:14
|
Для форматирования - удобно добавлять и удалять условия.
И для отладки - Истина быстро можно заменить на Ложь. |
|||
10
Бешеный заяц
11.09.20
✎
09:16
|
(0) заглушка, или так автору мыслить удобнее, например я не люблю конструкцию "НЕ" плохо мозг это у меня воспринимает поэтому часто делаю сравнение на "Ложь"
|
|||
11
dka80
11.09.20
✎
09:16
|
(7) Да. Фигню написал. Истина И Неопределено дает ошибку тоже. Значит точно заглушка
|
|||
12
вым
11.09.20
✎
09:20
|
в запросах особенно эффективно использовать. в отладке текст запроса не разрывается, а в работе "Истина" меняется на нужное условие
|
|||
13
DrZombi
гуру
11.09.20
✎
09:23
|
(0) Все просто.
Если документ не новый, то проверяем у него реквизит. Далее... Если Ложь... - Обычно данная конструкция используется для отладки, или когда Заказчик или РП (руководитель проекта) не знает, что хочет от программиста , а вернее от того, как надо реализовать. ... Давольно все просто и читаемо :) |
|||
14
DrZombi
гуру
11.09.20
✎
09:24
|
(12) +100 :)
|
|||
15
Fedor-1971
11.09.20
✎
09:40
|
(12) В запросах удобно использовать &НечтоДлинноеИМалостьОсмысленное, т.к. Истина может встречаться не там где тебе нужно заменить
(0) Это Включение/выключение условий с сохранением кода, т.е. у тебя есть некое сложное условие, что-бы не помнить "А что там было до того как" или заказчик взял и изменил условия проверки (или логику работы системы), но возможен возврат к старым. ставим "Ложь И" (то что было) - сохранили код, но в ветку гарантированно не попадём или нужно тупо отправлять по конкретной ветке тогда "Истина ИЛИ" Как вариант: реализованы несколько разных алгоритмов работы системы, конкретный заказчик сказал "Да будет так" и ему ставим "Истина ИЛИ" на нужную ветку, остальным нормально прокатывает многовариантность |
|||
16
mikecool
11.09.20
✎
09:41
|
иногда один глупец скажет то, что не понять и сотне мудрецов....
|
|||
17
fisher
11.09.20
✎
09:45
|
(0) Это для удобства рефакторинга - чтобы все "реальные" условия выглядели и форматировались однотипно. Сам подобный стиль не одобряю. Но и не порицаю.
|
|||
18
Вафель
11.09.20
✎
09:46
|
тут удобно что-то закомментить по быстрому
|
|||
19
вым
11.09.20
✎
09:47
|
(18) +100500
|
|||
20
вым
11.09.20
✎
09:50
|
(15) &НечтоДлинноеИМалостьОсмысленное - это дополнительный параметр запроса, в той же консоли его надо будет определять, да и в самом тексте определять, заменять. А так если замена не нужна будет по условиям, то работает по умолчанию
|
|||
21
fisher
11.09.20
✎
09:53
|
(17) + Т.е. тут идет размен маленького wtf на небольшое удобство рефакторинга в ряде случаев. Как по мне - весьма сомнительный размен.
|
|||
22
Bigbro
11.09.20
✎
09:57
|
я бы сказал что это почти наверняка выросло исторически. было многоэтажное условие, затем решили волевым условием что эта ветка должна отрабатываться так всегда.
ну а поскольку руководство не всегда представляет себе последствия решений, а код может быть весьма не прост и доставить непредвиденные нюансы - то программист сохранил все что было вместо замены условий. и вернуться будет возможно и при возникновении непонятных ситуаций найти причину будет проще. |
|||
23
Fedor-1971
11.09.20
✎
09:59
|
(21) Скорее размен "Целостность кода при доработке" на "Геморой с обновлением конкретного заказчика", при условии, что таких уникумов 1 или 2 из 20
|
|||
24
TormozIT
гуру
11.09.20
✎
10:01
|
||||
25
вым
11.09.20
✎
10:10
|
(24) красавчик!
долго вспоминал, где же я это читал |
|||
26
fisher
11.09.20
✎
10:10
|
(24) У тебя там кони-люди. В одной куче и приведение булева выражения к нормальной форме и сабжевый стилистический изыск. Одно с другим напрямую не связано.
|
|||
27
TormozIT
гуру
11.09.20
✎
10:13
|
(26) По поводу связи не согласен. Связь довольно явная. Она в статье как раз демонстрируется. А ты 5-ю словами решил опровергнуть это? Слабовато =)
|
|||
28
fisher
11.09.20
✎
10:15
|
(27) Имеющий уши да услышит.
|
|||
29
TormozIT
гуру
11.09.20
✎
10:16
|
(28) Желающий быть услышанным сформулирует свою точку зрения так, чтобы слушающие его услышали.
|
|||
30
fisher
11.09.20
✎
10:19
|
(29) "Для повышения наглядности вставляем в начало группы операцию с не нарушающим результат вычисления группы константным значением"
"ДЛЯ ПОВЫШЕНИЯ НАГЛЯДНОСТИ". Очень сильная явная связь. Неоспоримая. |
|||
31
fisher
11.09.20
✎
10:21
|
(30) А как по мне, если выкинуть из конечного итога преобразований "константные значения повышения наглядности", то наглядность не только не страдает, но и выигрывает.
|
|||
32
вым
11.09.20
✎
10:22
|
(31) на вкус и цвет фломастеры разные. Стандартов как таковых нет, вас никто не заставляет придерживаться этого правила
|
|||
33
fisher
11.09.20
✎
10:24
|
(32) Я так и писал выше. Что не одобряю этот стиль, но и не порицаю. А спорил с TormozIT в той части, что этот стилистический элемент не имеет прямой связи с приведением булева выражения к нормальной форме.
|
|||
34
fisher
11.09.20
✎
10:35
|
Можно притянуть за уши, что первая булева константа сразу дает понять, какая именно нормальная форма используется - дизъюнктивная или конъюнктивная. Но это именно будет притянуто за уши, ибо это прекрасно видно и без этого.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |