Size: a a a

1С, БСП, DevOps и Архитектура

2020 February 14

OT

Oleg Tymko in 1С, БСП, DevOps и Архитектура
И в итоге читаешь такое и мозготопливо тратится быстрее
источник

DO

Dmitry Ovcharenko in 1С, БСП, DevOps и Архитектура
Oleg Tymko
И в итоге читаешь такое и мозготопливо тратится быстрее
да, это даже похуже, чем суперметод)
источник

JD

John Doe in 1С, БСП, DevOps и Архитектура
На самом деле иногда не особо понятно, как дерево вложенных вызовов (в случае успеха) по-другому реализовать.
Т.е. вот такое:
Успех = СделатьЧтоТо_1();
Если Успех Тогда
   Успех = СделатьЧтоТо_2();
   Если Успех Тогда
       Успех = СделатьЧтоТо_3;
       ...
   КонецЕсли;
КонецЕсли;
источник

RB

Ramis Bakhtiev in 1С, БСП, DevOps и Архитектура
John Doe
На самом деле иногда не особо понятно, как дерево вложенных вызовов (в случае успеха) по-другому реализовать.
Т.е. вот такое:
Успех = СделатьЧтоТо_1();
Если Успех Тогда
   Успех = СделатьЧтоТо_2();
   Если Успех Тогда
       Успех = СделатьЧтоТо_3;
       ...
   КонецЕсли;
КонецЕсли;
Если не успех вываливаешься из процедурки, тогда вложенности не будет
источник

ПБ

Павел Белов in 1С, БСП, DevOps и Архитектура
John Doe
На самом деле иногда не особо понятно, как дерево вложенных вызовов (в случае успеха) по-другому реализовать.
Т.е. вот такое:
Успех = СделатьЧтоТо_1();
Если Успех Тогда
   Успех = СделатьЧтоТо_2();
   Если Успех Тогда
       Успех = СделатьЧтоТо_3;
       ...
   КонецЕсли;
КонецЕсли;
в сонаре критикал уровень вложенности >4
источник

ПБ

Павел Белов in 1С, БСП, DevOps и Архитектура
опыт показывает, что это можно расшить на разные процедурк
источник

Г

Г🐈рри in 1С, БСП, DevOps и Архитектура
Ramis Bakhtiev
Если не успех вываливаешься из процедурки, тогда вложенности не будет
так и пишут в типовых. Сверху вниз идут и проверяют условия последовательно - если не прошел - пока-пока-я-ухожу-отсюда. А если наоборот, как выше показано - то уровень вложенности может достигнуть предела понимаемости белка в мозгах, особенно если в иначе - дальше по если, там еще, еще.
источник

JD

John Doe in 1С, БСП, DevOps и Архитектура
Ramis Bakhtiev
Если не успех вываливаешься из процедурки, тогда вложенности не будет
Мне не нужно вываливаться - после этого всего еще идет всякий-разный код, выполняемый допустим независимо от успеха или неуспеха
источник

JD

John Doe in 1С, БСП, DevOps и Архитектура
Г🐈рри
так и пишут в типовых. Сверху вниз идут и проверяют условия последовательно - если не прошел - пока-пока-я-ухожу-отсюда. А если наоборот, как выше показано - то уровень вложенности может достигнуть предела понимаемости белка в мозгах, особенно если в иначе - дальше по если, там еще, еще.
Ну вот и меня большая вложенность такая иногда напрягает.
Если делать без вложенности, то это будет много вставок-дублей "если не прошел - пока-пока-я-ухожу-отсюда".
Веток Иначе в этой лесенке считаем что почти нет.
источник

Г

Г🐈рри in 1С, БСП, DevOps и Архитектура
John Doe
Ну вот и меня большая вложенность такая иногда напрягает.
Если делать без вложенности, то это будет много вставок-дублей "если не прошел - пока-пока-я-ухожу-отсюда".
Веток Иначе в этой лесенке считаем что почти нет.
=) мне кажется понимаемость макаронного кода сверху-вниз лучше, нежели постоянные метания и держание в белке мапы размазки мыси по этим развесистым ЕСЛИ ИНАЧЕ
источник

JD

John Doe in 1С, БСП, DevOps и Архитектура
Г🐈рри
=) мне кажется понимаемость макаронного кода сверху-вниз лучше, нежели постоянные метания и держание в белке мапы размазки мыси по этим развесистым ЕСЛИ ИНАЧЕ
Но иначе ведь не избежать дублирования кода по расстановке этих "точек прерывания"
источник

RB

Ramis Bakhtiev in 1С, БСП, DevOps и Архитектура
John Doe
Но иначе ведь не избежать дублирования кода по расстановке этих "точек прерывания"
Пссс, в один эсике есть  goto,  он решит все твои проблемы
источник

JD

John Doe in 1С, БСП, DevOps и Архитектура
Ramis Bakhtiev
Пссс, в один эсике есть  goto,  он решит все твои проблемы
А как решит? Можешь для фрагмента выше (из трех вложенных методов) привести пример?
источник

RB

Ramis Bakhtiev in 1С, БСП, DevOps и Архитектура
John Doe
А как решит? Можешь для фрагмента выше (из трех вложенных методов) привести пример?
Первое условие проверяешь и гоу ту в метку которая после возврата процедуры идет
источник

JD

John Doe in 1С, БСП, DevOps и Архитектура
Ramis Bakhtiev
Первое условие проверяешь и гоу ту в метку которая после возврата процедуры идет
Нипанятна
источник

Г

Г🐈рри in 1С, БСП, DevOps и Архитектура
Ramis Bakhtiev
Пссс, в один эсике есть  goto,  он решит все твои проблемы
в Универе у нас по любому аяпу за гоу-то ставили два. На ассемблере - отл. :)
источник

RB

Ramis Bakhtiev in 1С, БСП, DevOps и Архитектура
John Doe
Нипанятна
До компа дойду покажу пример
источник

GV

Gukov Viktor in 1С, БСП, DevOps и Архитектура
Ramis Bakhtiev
Первое условие проверяешь и гоу ту в метку которая после возврата процедуры идет
Какое GOTO, изверг
источник

VP

Vitaly Popov in 1С, БСП, DevOps и Архитектура
John Doe
На самом деле иногда не особо понятно, как дерево вложенных вызовов (в случае успеха) по-другому реализовать.
Т.е. вот такое:
Успех = СделатьЧтоТо_1();
Если Успех Тогда
   Успех = СделатьЧтоТо_2();
   Если Успех Тогда
       Успех = СделатьЧтоТо_3;
       ...
   КонецЕсли;
КонецЕсли;
Успех = СделатьЧтоТо_1();
Успех = СделатьЧтоТо_2(Успех);

----
Функция СделатьЧтоТо_2(РезультатПредыдущегоШага)
Если Не РезультатПредыдущегоШага Тогда
   Возврат РезультатПредыдущегоШага;
КонецЕсли
источник

𝖍

𝖍𝖔𝖉𝖞𝖙𝖔𝖓𝖊 in 1С, БСП, DevOps и Архитектура
Gukov Viktor
Какое GOTO, изверг
Ты в код обработки ВыгрузкаМетаданных из КД2 заглядывал?

Я ужаснулся...
источник