1C-Code → Теория → Язык и типы данных
Коллекции, типы, ссылки и значения, области выполнения.
Ниже — 2 вопроса с разбором. Всего по этой теме 10 вопросов, и в тренажёре они задаются вперемешку и без подсказок: там проверяется, что тема уложилась, а не что её приятно читать.
Что вернёт выражение <code>Истина ИЛИ Ложь И Ложь</code>?
Приоритет у логических операций такой: сначала НЕ, затем И, затем ИЛИ — И связывает крепче. Поэтому «Истина ИЛИ Ложь И Ложь» читается как «Истина ИЛИ (Ложь И Ложь)» и даёт Истину. Если написать «(Истина ИЛИ Ложь) И Ложь» — будет Ложь. Отсюда простое рабочее правило: смешивая И с ИЛИ, ставьте скобки, даже когда без них верно. Читающему код не придётся вспоминать таблицу.
Код с <code>Выполнить("...")</code> работает в толстом клиенте. Что будет, если ту же обработку открыть в веб-клиенте?
Выполнить и Вычислить исполняют код, собранный из строки. В веб-клиенте это запрещено: браузерная среда не умеет компилировать модуль на лету, и при вызове возникает исключение. В мобильном приложении на iOS — то же самое. Отсюда правило: код, который должен работать везде, на Выполнить не опирается. Почти всё, ради чего его берут, решается иначе — обращением по имени через <code>[ ]</code>, структурой с параметрами, заранее написанными ветками.
Ответы и разборы — в тренажёре.