Имя: Пароль:
1C
1С v8
Понятно ли тебе как упрощаются логические выражения "Ложь Или А" и "Истина И Б"?
,
0 TormozIT
 
гуру
05.11.17
09:09
1. Сразу понятно 64% (36)
2. Не понятно 20% (11)
3. Понятно, но думал более 10 сек 16% (9)
Всего мнений: 56

Прошу не писать упрощенные варианты выражений, а выбрать вариант ответа из опроса. Это важно для меня, чтобы лучше оценить усложнение чтения логических выражений от применения в них таких фрагментов.
1 Cyberhawk
 
05.11.17
09:22
.

Сразу понятно
3 vis_tmp
 
05.11.17
10:36
Это же простейшие условия...

Сразу понятно
7 Брудвар
 
05.11.17
12:26
(0) Элементарно.

Сразу понятно
9 yzimin
 
05.11.17
12:40
это из математической логики

не (А или Б) = не А и не Б
не (А и Б) = не А или не Б

Сразу понятно
11 quest
 
05.11.17
13:37
если помнишь логику - то понятно. если не помнишь - то в ступоре.

Сразу понятно
14 Владимир Милькин
 
05.11.17
13:56
Всё понятно, но я сам предпочитаю оформлять вот так:

Если (
    Условие1 Или
    Условие2 Или
    Условие 3
)
Тогда

КонецЕсли;

Сразу понятно
16 Скиурус
 
05.11.17
14:04
(10) Выражение понятно вполне, но с мнением некоторых коллег я полностью согласен - это не упрощение, это ненужное усложнение.

Сразу понятно
48 Брудвар
 
05.11.17
16:48
(46) Все верно. А еще таким способом удобно составлять условия в текстовом виде, например для запросов. Размеры кода сокращаются, логичность повышается.
Если кому-то такая элементарная конструкция режет глаза, то что с ними будет если увидят сложное логическое выражение?

Сразу понятно
50 Лефмихалыч
 
05.11.17
17:25
у меня по этим сокращениям ч0рный пояс

Сразу понятно
60 Горностаев
 
05.11.17
19:52
(0 || A ) & (1 & B) = A & B

Сразу понятно
74 Рэйв
 
06.11.17
05:55
...

Сразу понятно
76 vvp91
 
07.11.17
15:41
(68) (73) У вендора в этом вопросе проблема - явная обязанность писать Тогда в последней строке многострочного условия.
Эта обязанность напрочь убивает любую читабельность условий.

Здравый смысл и читабельность показывают, что:
* в однострочном Если писать Тогда надо в одной строке
* в многострочном Если писать Тогда надо в отдельной строке на том же уровне отступа, что и Если.

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

Сразу понятно
77 GANR
 
07.11.17
16:07
По 10 раз на дню пишем условные операторы.

Сразу понятно
78 DGorgoN
 
07.11.17
16:09
Если пишешь это часто то и понимание занимает мгновение, уверен что если человек с этим не работает то и понимание усложняется.

Сразу понятно
79 ptiz
 
07.11.17
16:11
Странно, но понятно

Сразу понятно
80 lodger
 
07.11.17
16:20
Сразу понятно, что толку от этого нет.

Сразу понятно
85 Махони402
 
07.11.17
23:17
Сразу понятно. Наверное потому, что часто при отладке (особенно запросов в консоли) руки тянутся к "//" для временного отключения условий.
Ну и, соответственно, чтобы спокойно можно было комментить и первое условие тоже оно должно стать вторым :)
из

Когда //У1
Или У2

логично же сделать

Когда Ложь
//Или У1
Или У2

Сразу понятно
88 Lokli
 
08.11.17
06:14
Понятно, хотя и не привычно. Скажу так: "будет резать глаз". Какое-то время придется потратить на разбор этой конструкции в коде, если встретиться.

Сразу понятно
90 alkov
 
08.11.17
06:53

Сразу понятно
97 Мыш
 
08.11.17
09:35
Удобно для структурирования сложных условий, с количеством элементов более трех. Если до трех - проще без такого.

Сразу понятно
99 Smile 8D
 
08.11.17
09:44
Идею вроде понял. Сам форматирую сложные выражения только переносами строк и отступами. Возможно, что не так часто приходится комментировать отдельные условия, поэтому задумываться над введением дополнительных "Ложь" и "Истина" не приходилось.

Сразу понятно
102 Веселый собака
 
08.11.17
10:08
А почему, собственно, такой вопрос у ТС?
Начинающий?

Сразу понятно
104 Radkt
 
08.11.17
10:35
понятно, сек 10 думал

Сразу понятно
105 dezss
 
08.11.17
10:38
А что тут непонятного?

Сразу понятно
108 singlych
 
08.11.17
10:48
Ну, не то чтобы сразу. Какое-то время я бы думал, зачем это и как это переделать.

Сразу понятно
121 DeeK
 
08.11.17
11:42
все понятно, но наркоманство какое-то

Сразу понятно
122 тарам пам пам
 
08.11.17
11:43
Выражение понятно через пару секунд; если привыкнуть - будет понятно мгновенно.

Однако считаю такое оформление кода некорректным - потому что есть code-style от 1с, по которому оформлены все типовые конфигурации. А так как работа идет в 90% случаев с типовыми, то именно стандартный стиль кода воспринимается быстрее всего, и код "нетипового" разработчика также будет воспринят быстрее, если он будет написан в соответствии со стандартами от 1с.

Сразу понятно
130 senior
 
08.11.17
13:43
_

Сразу понятно
131 Basilio
 
08.11.17
13:45
(0) Понятно, но нахрен не нужно. ИМХО.

Сразу понятно
133 glebgleb
 
08.11.17
14:16
Понятно

Сразу понятно
136 lubitelxml
 
09.11.17
15:27
Не мне не нужно, особо не сталкивался с такими выражениями в типовых

Сразу понятно
137 mistеr
 
09.11.17
16:15
(10) Любые дополнительные члены в выражении требуют дополнительных мысленных усилий. Это не только усложняет понимание (пцсть ненамного), но и замедляет чтение кода и отвлекает от основной мысли, что более важно.

Поэтому, хоть система и-или дереви и неплоха, но я против ее широкого применения в таком виде. Я бы предложил заметить "Ложь ИЛИ" и "Истина И" на пробелы с сохранением форматирования.

Сразу понятно
145 DomovoiAtakue
 
09.11.17
19:36
В вопросе спрашивают знание составления логических выражений, а в теме разбирают как оформлять их. Так в чем вопрос то?

По поводу оформления: сходите в школу, универ там все уже давно придумано.
1)По поводу скобок - главное чтоб не было недостатка. а так хоть каждое условие выделяйте в скобки, нормальный человек легко это читает. (не говоря уже о том, что есть отладчик и я вообще не помню когда вникал что там в этих условиях написано)
2)"Тогда" не переносится на новую строку - что за новшества раздувать код и убивать читабельность?
3)Мастерить в виде дерева - вам делать нечего? Строчите быстрее и все. Сложные условия редко когда бывают из 5 блоков, а это читается мгновенно.

Чем люди только не занимаются, чтоб только ничего не делать :)

Сразу понятно
147 Franchiser
 
гуру
09.11.17
23:46
На практике не стоит писать такие запутанные условия, проще воспринимается вхождение в массив.

Сразу понятно
173 Peltzer
 
10.11.17
13:24
Легко

Сразу понятно
188 Митяйский
 
13.11.17
09:17
да

Сразу понятно
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.