#0
by чувак
Столкнулся в одной обработке на такую операцию: И вот задумался. Есть ли какое нибудь принципиальное отличие этой операции от стандартных например: Результат = -Сумма ИЛИ Результат = Сумма * -1;
#1
by Провинциальный 1сник
Вообще два знака сразу писать не принято, поэтому и скобки. А минус в начале недостаточно нагляден и не бросается в глаза - а это может быть нужно.
#4
by NorthWind
это для понятности. Скорее всего, умножение на минус один подразумевалось по смыслу алгоритма, вот он так и написал - в лоб, чтобы точно никто не запутался.
#5
by чувак
Как обычно код читают не юзеры, а вполне адекватные прогеры. Автор или тролл или педантичный сукин сын.
#6
by Провинциальный 1сник
Надо уважать тех, кто идет за тобой следом. Если есть возможность и время сделать код более понятным - надо это делать. Конечно, всяким пхпшникам этого не понять - они пишут "на один раз".
#7
by чувак
Наоборот такие выкрутасы путают читающего. Прогер начинает искать глубокий смысл в этих строках :)
#9
by NorthWind
нет. Если все оформлять верно, то, во-первых, каменные должны быть к каждой строке, кроме тех, где смысл как конструкции, так и её назначения однозначно понятен. Сто строк кода и 80 строк камментов. Во-вторых, арифметика должна быть расписана примерно так как сделано здесь.
#11
by mkalimulin
Лично я использую комментарии в процессе написания. Это оправдано. Потом постепенно стираю. Когда в программе не остается комментариев, считаю что закончил. Мой принцип - в работающей программе комментариев быть не должно.
#12
by NorthWind
а зачем стирать? Через год понадобится что-то поменять в коде - ничерта не вспомнишь без камментов... Не знаю. У меня был преподаватель, который говорил, что комментарии надо писать к каждой строке кода, назначение которой человек, первый раз видящий код, не может понять сходу. Тогда мне казалось, что это излишество. Сейчас я полагаю, что такой подход во многих случаях является оправданным.
#13
by Метранпаж
Код, в котором нужно что-то менять - не является завершённым. Поэтому по определению он содержит комментарии
#14
by NorthWind
А он никакой не является завершенным. Даже в системное ПО типа ОС вносят обновления. А про код прикладного ПО, который зависит от таких вещей как законодательство, даже смешно говорить, что он завершенный.
#15
by mkalimulin
Представьте себе код: с=а*б; его нужно поменять на: с=а+б; код без комментария: с=а*б; код с комментарием: (да,да здесь ошиблись. поэтому-то и надо код менять) Задайте себе вопрос: комментарий помогает или мешает?
#16
by Torquader
Если у каждой такой строчки писать комментарий, то у читателя волосы дыбом встанут.
#17
by NorthWind
, Наименования переменных должны соответствовать объектам автоматизируемой предметной области, скажем СуммаПродажи = ЦенаПродажи * КоличествоВБазовойЕдинице; И тогда к такой строчке можно не писать комментарий, потому что все и так понятно.
#19
by NorthWind
ок, отвечу развёрнуто. не помогает и не мешает, потому что в данном фрагменте назначение кода внутри решаемой задачи лично мне непонятно. Имена переменных его не проясняют, также как и односложный комментарий.
#20
by mkalimulin
Ты все равно смотришь на палец. Причем здесь имена переменных? Если код работает - то зачем его читать? А если код не работает, в нем ошибка, написано: вместо: ПеременнаяСПонятнымИменем=ДругаяПеременнаяСПонятнымЛичноТебеИменем+ТретьяПеременнаяСИменемПонятнымВсемДажеРебенку; тогда читать нужно код, а не комментарий. Более того, привычка читать комментарии может привести к тому, что ты эту ошибку не найдешь.
#21
by NorthWind
если формула достаточно проста и по именам переменных её назначение понятно, то комментарии не нужны. Но бывают более сложные конструкции, когда уже не получается за одно прочтение без дополнительных пояснений понять, что делается. Я на самом деле не агитирую именно за комментарии. Главное - чтобы вы сами через 5 лет и даже с глубокого бодуна за одно прочтение могли понять, чего ж это такого вы имели в виду. И тут хороши все доступные средства, будь то комментарии, именование переменных и т.д.
#22
by orefkov
Байт-код для выполнения в виртуальной машине 1С сформируется разный. В первом случае - загрузка одного операнда, загрузка числового операнда, операция умножения одного Value на другое Value. Во втором случае - загрузка значения, унарная операция смены знака. Так получается и байт-код короче, так и операция смены знака "унутре" выполняется чуть быстрее и оптимальнее, чем операция перемножения двух переменных.
#23
by Torquader
Это если 1С не умеет оптимизировать - хотя, судя по тому, как она написана - она это никогда уметь не будет.
#24
by orefkov
Я ванговать не берусь, но сейчас таких оптимизаций в реализации скриптовой машины 1С нет.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
В этой группе 1С
- ИнтернетПочтовоеСообщение.УведомитьОДоставке Так и не работает?
- Web-сервис 1С - как авторизоваться под пользователем, заведенным в 1С
- УФ, ДеревоЗначений как на сервере узнать, текущую выбранную на клиенте строку
- v7: Нужен справочник английских синонимов для языка 1С 7.7
- Обмен КА 1.1-> БП 3.0 как-то выборочно не заполняются реквизиты док.
- недостаточно памяти sql
- Надбавка за вредные условия труда не начисляет 1С ЗУП 3.0
- soap. Ошибка работы с Интернет: не могу установить соединение
- нужна помощь по HTTPСоединение
- v7: Кнопка по умолчанию в процедуре Вопрос
- 1С ЕГАИС Акт расхождения
- Заполнение диаграммы Ганта на сервере и вывод на форме.
- УПП, документ требование накладная, не списано по партиям
- Сформировать строку отборов динамического списка
- Перенос номенклатуры в Аптеку c диска ИТС
- Отчеты в УНФ.
- Не могу подключится к базе через WEB. Раньше работало...
- КД 2.1 удаление объекта по условию
- Позиционирование на строке динамического списка
- Проблема с ComConnector