|
Как идеологически правильно? | ☑ | ||
---|---|---|---|---|
0
Dmitry1c
12.11.13
✎
09:47
|
Процедура 1()
// какой-то код Если Условие1 Тогда 2(); КонецЕсли; КонецПроцедуры Процедура 2() // какой-то код КонецПроцедуры ИЛИ-------------------------- Процедура 1() // какой-то код 2(); КонецПроцедуры Процедура 2() Если Условие1 Тогда // какой-то код КонецЕсли; КонецПроцедуры |
|||
1
mikecool
12.11.13
✎
09:48
|
нас рать
|
|||
2
Dmitry1c
12.11.13
✎
09:49
|
я склоняюсь к 1 варианту.
|
|||
3
mikecool
12.11.13
✎
09:49
|
я делю проверки в обработчиках событий и выделяю сами куски обработчиков в отдельные процы
|
|||
5
Hans
12.11.13
✎
09:51
|
Если условие нужно всегда, то условие я бы поместил во вторую процедуру.
|
|||
6
Sabbath
12.11.13
✎
09:53
|
(0) ну если в процедуре 2 нету никакого кода вне условия Если, то правильно первый вариант. А вообще может зависеть от того, как вторая используется. Вдруг ее надо вызывать из нескольких процедур, тогда удобней второй вариант. Хотя имхо все равно первый вернее
|
|||
7
skunk
12.11.13
✎
09:54
|
по идеологии код должен быть понятным ... поэтому если для выполнения процедуры 2 требуется условие ... читабельнее условие оставить в процедуре 1 ... абы читающий не разбирал процедуру 2 в случае если у него условие выполнения не соблюдается
|
|||
8
skunk
12.11.13
✎
09:54
|
где совалка?
|
|||
9
SeraFim
12.11.13
✎
09:56
|
Первый вариант - понятнее, легче читается.
Но всё всегда зависит от конкретных условий) |
|||
10
Kamas
12.11.13
✎
10:01
|
Все зависит от того: 2() применяется еще где либо и какая конкретнее проверка. Если проверка существенно уменьшает количество вызовов 2() то стоит делать перед вызовом, иначе лучше засунуть в 2(). Мало ли где нам еще потребуется эта функции ))
|
|||
11
Dmitry1c
12.11.13
✎
10:01
|
(9) да, и как раз недостаток первого варианта - могут быть куски повторяющегося кода-проверки условия
|
|||
12
1dvd
12.11.13
✎
10:08
|
(11) если условие всегда нужно проверять, то вариант 2
|
|||
13
Dmitry1c
12.11.13
✎
10:09
|
Кстати, в типовых встречал так:
Если СложноеУсловие() Тогда Процедура(); КонецЕсли; |
|||
14
1dvd
12.11.13
✎
10:14
|
xxx: как мне назвать эти методы?
yyy: да как хочешь... назови Залупа и Патефон! xxx: а почему Патефон? © bash |
|||
15
Maxus43
12.11.13
✎
10:18
|
Если ты вызываешь процедуру по условию - то п.1, ибо ты можешь вызвать её и без условия из другого места.
Если условие для процедуру одно и то же и всегда - то конечно п.2. Тут не Идеологически что правильно, а логически. |
|||
16
Bigbro
12.11.13
✎
10:22
|
вот (15) вариант мне нравится)
|
|||
17
gae
12.11.13
✎
11:21
|
Если принципиально всегда будет использоваться так
Если Условие1 Тогда 2(); КонецЕсли; то помещай условие внутрь 2(). |
|||
18
Лефмихалыч
12.11.13
✎
11:34
|
(0) как понятнее будет потом, так и надо писать сейчас. А вообще варианты не эквивалентны ни разу
|
|||
19
Поросенок Петр
12.11.13
✎
11:45
|
Вызывать процедуру или нет, должна вызывающая сторона решать. Вызываемая процедура должна делать что-то одно. Она де должна делать что-то разное в зависимости от параметров, либо решать делать что-то или не делать. Поэтому вариант 1.
Подробнее - у "Роберта Мартина Фаулера". |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |