|
OFF: Оформление кода | ☑ | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
0
Stim213
28.05.11
✎
18:00
|
1 вариант:
ДатаПроверки = бла-бла-бла; Отказ = Источник.Дата < ДатаПроверки; 2 вариант: ДатаПроверки = бла-бла-бла; Если Источник.Дата < ДатаПроверки Тогда Отказ = Истина; КонецЕсли; Какой вариант идеологически правильный? |
||||||||||
1
poligraf
28.05.11
✎
18:05
|
Первый вариант некоторые могут не понять:)
Монопесуально |
||||||||||
2
Невский Александр
28.05.11
✎
18:08
|
в данном случае без разницы
Первый вариант только более читабельнее (и то только на мой взгляд) |
||||||||||
3
Rie
28.05.11
✎
18:08
|
(0) Первый короче (а стало быть, обозримей).
(1) Это их личные половые проблемы. Монопесуально |
||||||||||
4
Rie
28.05.11
✎
18:09
|
А почему ветка в LIFE, а не в v8?
По смыслу-то - вроде как тематическая. |
||||||||||
5
Скользящий
28.05.11
✎
18:10
|
второй проще воспринимается при чтении чужого кода.
|
||||||||||
6
Скользящий
28.05.11
✎
18:10
|
2 вариант |
||||||||||
7
Stim213
28.05.11
✎
18:11
|
(4) секция - работа.
|
||||||||||
8
Кpoшка
28.05.11
✎
18:12
|
1й лаконичный
2й структурный если работаешь коллективно (твой код будут читать другие) то 2й предпочтительнее |
||||||||||
9
Попытка1С
28.05.11
✎
18:26
|
имхо
2 вариант |
||||||||||
10
Nexux
28.05.11
✎
18:36
|
хз
1 вариант |
||||||||||
11
Asmody
28.05.11
✎
18:41
|
Какой тип у переменной бла?
|
||||||||||
12
Mnemonic1C
28.05.11
✎
18:55
|
Первый красивее и понятней, второй для школоты
1 вариант |
||||||||||
13
zyto
28.05.11
✎
18:55
|
+(11)Хорошо бы перед этим проверить на тип (и заполненность)...
А то сразу ошибку в лоб получишь (в обоих случаях) |
||||||||||
14
Asmody
28.05.11
✎
19:00
|
(13)+ и в попытку завернуть
|
||||||||||
15
Rie
28.05.11
✎
19:04
|
(13) Если сразу получишь - то хорошо. Искать не надо будет.
А вот проверять на тип и заполненность или не надо - зависит от того, что было раньше. |
||||||||||
16
rs_trade
28.05.11
✎
19:14
|
(1) на кой черт тогда вообще в конфигуратор лезть, если не способен понять эту строчку
1 вариант |
||||||||||
17
smaharbA
28.05.11
✎
19:19
|
оно конечно, оно так - именно для школоты, вот тока как быть с этим ?
|
||||||||||
18
Stim213
28.05.11
✎
19:24
|
(17) как так нету? ты не видишь суслика? Он же есть! проверка на равенство одинаковых типов всегда что-то да вернет
|
||||||||||
19
smaharbA
28.05.11
✎
19:25
|
учиться тебе еще стим
|
||||||||||
20
smaharbA
28.05.11
✎
19:25
|
думай еще о чем (17)
|
||||||||||
21
Rie
28.05.11
✎
19:28
|
(18) Посмотри, какие варианты приведены в (0) :-)
|
||||||||||
22
Stim213
28.05.11
✎
19:31
|
поясните
|
||||||||||
23
Rie
28.05.11
✎
19:32
|
(22) Варианты кода в (0) - не эквивалентны.
А все до (17) (включая меня) проявили себя дятлами. |
||||||||||
24
skunk
28.05.11
✎
19:33
|
второй дольше выполняется
1 вариант |
||||||||||
25
Ursus maritimus
28.05.11
✎
19:34
|
(17) Ты пьяный?
|
||||||||||
26
Rie
28.05.11
✎
19:34
|
(24) И тебе внимательно прочитать (17).
Или даже более простой пример: Отказ = "ХЕР ВАМ"; // сюда подставить первый или второй варианты Сообщить(Отказ); |
||||||||||
27
pavig
28.05.11
✎
19:35
|
(0)
имхо, много лишних строчек кода сам стараюсь взять за правило писать короче (пусть и сложнее) -- в пределах разумного (23) просто в (0) ТС не дописал ...ИНАЧЕ... 1 вариант |
||||||||||
28
Рэйв
28.05.11
✎
19:35
|
(0)ты походу шлангуешь всю работу против посидеть на мисте:))
Ну вот надо из пальца высосать и непременно запостить. Это наверное и есть МИСТОзависимость? Монопесуально |
||||||||||
29
Ursus maritimus
28.05.11
✎
19:38
|
(26) Мы родом из семерко? Отказ - 99% переменная определенная всегда. 79% что процедура называтеся ПередЗаписью()
|
||||||||||
30
Rie
28.05.11
✎
19:38
|
(27) Смотрим на тот код, который есть. Недописанного - его нет.
|
||||||||||
31
smaharbA
28.05.11
✎
19:40
|
точно облака весь мозг поплющели
|
||||||||||
32
Stim213
28.05.11
✎
19:41
|
блин, народ. Я спросил про читабельность, а не про функциональность. Отказ в обработчиках записи и проведения всегда определен по умолчанию как ЛОЖЬ, харе придираться.
Вам "Источник" ни о чем не говорит? |
||||||||||
33
Rie
28.05.11
✎
19:41
|
(29) Не, просто не хрен надеяться на вероятность, если можно написать правильно.
Вот другой пример: Отказ = Истина; // здесь варианты кода из (0) Переменная Отказ - определена. Вот только значение у неё будет несколько неожиданное, если Источник.Дата>=ДатаПроверки |
||||||||||
34
rs_trade
28.05.11
✎
19:41
|
(30) да никто не париться о правильности кода. говорим об оформлении же. можно привести и корректный пример кода, если этот не нравится оформленный по принципам в сабже
|
||||||||||
35
Rie
28.05.11
✎
19:41
|
(32) Насчёт функциональности - см. (33).
|
||||||||||
36
Rie
28.05.11
✎
19:42
|
(34) Ага. А потом ошибки ловим в хорошо оформленной программе.
|
||||||||||
37
smaharbA
28.05.11
✎
19:43
|
и среди тех кто тут пренебрежно родом с семерки известен код из сабжа и его не равнозначность и неоднозначноть
и косяки текущиеся из варианта один |
||||||||||
38
Stim213
28.05.11
✎
19:44
|
(33) переменная Отказ уже определена как ЛОЖЬ, тип Булево. Зачем её еще раз определять?
|
||||||||||
39
Rie
28.05.11
✎
19:44
|
(37) Косяки или их отсутствие зависят не от варианта. И вариант 1 может быть правильным (в одной ситуации) и вариант 2 может быть правильным (в другой ситуации).
|
||||||||||
40
rs_trade
28.05.11
✎
19:44
|
(36) ошибки мы всегда ловим, при любом раскладе. такова специфика
|
||||||||||
41
Ursus maritimus
28.05.11
✎
19:44
|
(37) Можно то же самое со знаками препинания? 5 раз прочитал - ни разу не понял.
|
||||||||||
42
smaharbA
28.05.11
✎
19:45
|
(32) читабельность всегда была и будет лучше у второго варианта, ибо читают не только типоякрутойичиталкнута, но и те кто мысли строит ступенчато
|
||||||||||
43
Rie
28.05.11
✎
19:45
|
(38) В (33) - по каким-то причинам установили Отказ в ИСТИНА (предыдущая проверка выявила какую-то хрень).
Вариант 1 вернёт его в ЛОЖЬ - что не есть гуд. |
||||||||||
44
Rie
28.05.11
✎
19:45
|
(40) Но можно уменьшить их количество.
|
||||||||||
45
smaharbA
28.05.11
✎
19:45
|
(39) о чем и был пост (17)
|
||||||||||
46
Stim213
28.05.11
✎
19:46
|
(39) в каких ситуациях варианты 1 или 2 могут вызвать ошибку? Напоминаю, что речь идет о синтаксисе 8ке, обработчик ПередЗаписью, вызываемый в подписке на события
|
||||||||||
47
smaharbA
28.05.11
✎
19:47
|
(43) да, есть три состояния булевых в языках без "жесткого" приведения
Ложь, Истина и еще третье Не ложь |
||||||||||
48
rs_trade
28.05.11
✎
19:48
|
(42) если выражение короткое, можно и первый. а вот большие и длинные выражения в одну строчку убивают
|
||||||||||
49
Stim213
28.05.11
✎
19:48
|
(43)а что такого?? Ты имеешь ввиду, что после записи в пер. Отказ значения Истина надо всегда делать Возврат из процедуры?
|
||||||||||
50
Rie
28.05.11
✎
19:49
|
(46) И я о нём же. Ситуация была приведена в (33).
Более подробно: предположим, что Источник.Дата>ДатаПроверки. Изначально Отказ-ЛОЖЬ; Если ЕстьДругиеКосякиПрепятствующиеЗаписи(Источник) Тогда Отказ = Истина; КонецЕсли; // а теперь твои варианты |
||||||||||
51
Rie
28.05.11
✎
19:49
|
(49) Не обязательно Возврат.
Может оказаться полезным проверить и другие условия - хотя бы для выдачи более аккуратного сообщения об ошибке. |
||||||||||
52
NcSteel
28.05.11
✎
19:53
|
(25) Поэтому и использую обычно первый вариант
|
||||||||||
53
skunk
28.05.11
✎
19:54
|
так и не осилил причем тут код заказаный амбромсом ... он конечно великий танкист ... спору нет ... но тут именно спросили что правильнее (а) или (б)
|
||||||||||
54
Stim213
28.05.11
✎
19:54
|
(50) понял. Тогда, хм. первый вариант будет как-то так:
Отказ = Отказ ИЛИ Источник.Дата < ДатаПроверки; логически так вернее, то визуально код сложнее для чтения) |
||||||||||
55
smaharbA
28.05.11
✎
19:55
|
конечно проще все впихать в одно, к слову
читаемо ? ... = Мин(Найти(ВРег(НазваниеИнтерфейса()),"АДМИНИСТРАТОР"),1)+Мин(Найти(ВРег(НазваниеНабораПрав()),"АДМИНИСТРАТОР")*2,2); |
||||||||||
56
Rie
28.05.11
✎
19:55
|
(53) А он и ответил - что правильность (а) или (б) зависит от.
|
||||||||||
57
Stim213
28.05.11
✎
19:56
|
(55) только давай не будем постить простыни. Понятно, что они никому не нужны. в (0) - не простыня
|
||||||||||
58
Rie
28.05.11
✎
19:58
|
(54) Можно и так. И визуально этот код _может_ оказаться проще для чтения - из него понятно, что Отказ "накапливает" ошибки. А _может_ оказаться и сложнее.
|
||||||||||
59
smaharbA
28.05.11
✎
19:59
|
грешен пиханием в одно условие всего и присвоения, так просче
но заявы про школоту несколько преждевременны |
||||||||||
60
skunk
28.05.11
✎
19:59
|
(56)кароче ... я слишком пьян сегодня для высоких материй
|
||||||||||
61
NcSteel
28.05.11
✎
20:00
|
Короче. Хватит пить !
|
||||||||||
62
skunk
28.05.11
✎
20:01
|
(61)упал???? ... в день пограничка такое говорить пограничникам
|
||||||||||
63
miki
28.05.11
✎
20:01
|
бритва Оккама за
1 вариант |
||||||||||
64
smaharbA
28.05.11
✎
20:02
|
а я спиртику развел, жду когда охладится, счас бедрышки замариновал, отправлю в духовку. Семья смотрит фабрику звезд.
|
||||||||||
65
smaharbA
28.05.11
✎
20:03
|
(62) пля скунки, точно простите подлеца пагранцы
С Днюхой вас Погранцы ! |
||||||||||
66
NcSteel
28.05.11
✎
20:04
|
(62) Поздравляю !
|
||||||||||
67
Rie
28.05.11
✎
20:05
|
(62) С праздником!
|
||||||||||
68
rs_trade
28.05.11
✎
20:05
|
(55) мне кстати когда такой код встречается, я его не пытаюсь осмыслить как он написан. а начинаю эту строчку переписывать ступенчато.
|
||||||||||
69
skunk
28.05.11
✎
20:10
|
(64)везет ... моя бухтит как пылесос ... жду когда спать уляжеться ... абы бутылку из заначки достать
(65),(66) и (67)спасибо |
||||||||||
70
pwei
29.05.11
✎
09:48
|
только первый вариант. а еще почаще использовать конструкцию ?(,,,).
а то иногда встречаешь: если чтото=истина тогда делаем иначе неделаем конецесли 1 вариант |
||||||||||
71
Alexandr Puzakov
29.05.11
✎
10:56
|
Глупое обсуждение...
|
||||||||||
72
dimoff
29.05.11
✎
11:26
|
(71) Бессмысленный вопрос - бессмысленное обсуждение.
|
||||||||||
73
Rie
29.05.11
✎
11:28
|
(70) Не всегда эта конструкция бессмысленна. ЧтоТо может оказаться не определено - и в результате "Невозможно привести к типу Булево".
|
||||||||||
74
Uragan_a
29.05.11
✎
11:30
|
красивей
1 вариант |
||||||||||
75
Дикообразко
29.05.11
✎
11:36
|
часто появляется необходимость, дописать туда еще один оператор и приходится 1 вариант переписывать во 2й...
поэтому 1й надо использовать только тогда, когда уверен, что переписывать не придется Монопесуально |
||||||||||
76
kosts
29.05.11
✎
11:51
|
В данном случае предпочту 2-й
2 вариант |
||||||||||
77
AlStorm
29.05.11
✎
14:54
|
Вот не надо таких извращений.
Вы видимо за особо "умными" код на С++ не правили, где можно разойтись в "красивостях" похлеще.. После этого всегда пишу код так, что и идиоту будет понятно. Как там у Маконелла? "Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете" 2 вариант |
||||||||||
78
Rie
29.05.11
✎
15:00
|
(77) smaharbA показал в (17), что варианты 1 и 2 - НЕэквивалентны.
После этого спор о том, какой из них "красивее", IMHO, теряет смысл. Если же речь идёт о выборе ДатаПроверки = БлаБлаБла; Отказ = Источник.Дата < ДатаПроверки; и ДатаПроверки = БлаБлаБла; Если Источник.Дата<ДатаПроверки Тогда Отказ = Истина; Иначе Отказ = Ложь; КонецЕсли; то, IMHO, далеко не факт, что второй вариант - нагляднее. (Чисто зрительно - условие (то есть, существенная часть) теряется в тексте). |
||||||||||
79
AlStorm
29.05.11
✎
15:05
|
(78)
Я и не именно об этом коде говорю, а вообще о "сокращения или хитрый ход ради красоты". Да и возможно переменная Отказ была обнулена перед вызовом:) Как-то правил код, где переменная была - булево. То есть цикл работал 2 раза, от Ложь к Истине. Правил код, где ради производительности в цикл запихали эквивалент 500 строчек - одной строкой. Чем проще - тем всегда лучше. |
||||||||||
80
AlStorm
29.05.11
✎
15:06
|
В (79) не "переменная была", а "переменная цикла была"
|
||||||||||
81
IamAlexy
29.05.11
✎
15:08
|
как правильно в условии писать?
если А=Б тогда.... или если Б=А тогда... очень, очень важный и спорный момент. так же крайне интересно что быстрее работает.. какой вариант |
||||||||||
82
Rie
29.05.11
✎
15:10
|
(79) С тем, что "чем проще, тем лучше" (при неявном предположении "оба правильные", естественно) - спору нет.
(Кстати, пример с булевым параметром цикла - как бы не в одной из типовых 1С-овских видел). Но прикол с примером в (0) - до smaharbA никто (в том числе и я) не заметил ошибки. Это уже говорит о том, насколько читабелен код. IMHO. |
||||||||||
83
Rie
29.05.11
✎
15:11
|
(81) Иногда и такое бывает полезно.
Скажем, в C++ if (x=0) // здесь ошибка, но компилятор в лучшем случае лишь предупредит или if (0=x) // и получаем кучу матов от компилятора |
||||||||||
84
AlStorm
29.05.11
✎
15:12
|
(81)
А какая разница? А вообще, Маконнелл учит, что сначала проверяется самое очевидное условие:) |
||||||||||
85
Сияющий Асинхраль
29.05.11
✎
16:19
|
Я использую по возможности вариант 2, т.к. он читабельней, если к коду возвращаться позднее
2 вариант |
||||||||||
86
Злобный монстр
29.05.11
✎
16:41
|
Краткость - сестра таланта!
1 вариант |
||||||||||
87
Mitriy
29.05.11
✎
17:14
|
монопенисуально
Монопесуально |
||||||||||
88
Поручик
29.05.11
✎
17:34
|
Чем непонятней, тем востребованней.
1 вариант |
||||||||||
89
Alexandr Puzakov
29.05.11
✎
17:44
|
(17) это как ее может не быть, если ты ее как минимум только что создал? Твое исключение не наступит никогда.
|
||||||||||
90
Rie
29.05.11
✎
17:50
|
(89) В данном случае - переменная есть. Это вариант 1 из (0).
А теперь то же самое - но с вариантом 2 из (0). И? |
||||||||||
91
Лефмихалыч
29.05.11
✎
17:51
|
меньше буков
1 вариант |
||||||||||
92
Поручик
29.05.11
✎
17:55
|
Ага, (55), (91)
Например, я довольно часто использую подобные конструкции. СписокВыбораКонтактногоЛица.ЗагрузитьЗначения(Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("ДолжностьФИО")); Просто и со вкусом |
||||||||||
93
Сияющий Асинхраль
29.05.11
✎
17:56
|
(89) Такие глючки очень часто всплывали, например, на семерке - когда народ в ПриОткрытии писал выражение типа первого из (0), а потом жалился - почему это записанный документ после открытия всегда выдает запрос на сохранение, это же и в восьмерке осталось, так что с такими выражениями надо быть очень осторожным...
|
||||||||||
94
Лефмихалыч
29.05.11
✎
17:59
|
(92) ну, вот такие-то конструкции вредны. Хотя бы потому, что когда в этой строке происходит рантайм ошибка, ты хер поймешь, в каком месте ее искать. Так что "КЫР сестра ТЫЛ", но без фанатизма
|
||||||||||
95
Rie
29.05.11
✎
18:02
|
(94) Не согласен. Конструкция полезная и популярная (правда, в более других языках - например, в C#). По сути - это то же самое последовательное выполнение вызовов методов, но без использования дополнительных переменных.
Отладчиком тут действительно пользоваться сложновато. Но это, скорее, проблемы создателей Отладчика. (IMHO, Отладчик как инструмент - нужен в редких случаях; если возникла ошибка - организовать (временно) условия для её анализа вполне возможно). |
||||||||||
96
Alexandr Puzakov
29.05.11
✎
18:02
|
(90) а переменная в любом случае будет. В (17) она создается вне конструкции Если.
Я понимаю, что в (0) второй вариант может оказаться неработоспособным, если переменная Отказ не была создана ранее, или не является параметром процедуры/функции. |
||||||||||
97
Alexandr Puzakov
29.05.11
✎
18:04
|
(92) очень трудно читается...
|
||||||||||
98
Rie
29.05.11
✎
18:05
|
(96) Во всех случаях. Даже если переменной Отказ было присвоено значение - вариант 1 его изменяет _всегда_, вариант 2 - _иногда_. Соответственно, эти варианты работают по разному.
Какой из них правильный, а какой нет - зависит от того кода, который написан до этого места и после этого места. Но один из них - всегда окажется неправильным. |
||||||||||
99
Rie
29.05.11
✎
18:07
|
(97) Можно переписать поудобнее:
СписокВыбораКонтактногоЛица.ЗагрузитьЗначения (Запрос .Выполнить() .Выгрузить() .ВыгрузитьКолонку("ДолжностьФИО") ); |
||||||||||
100
zak555
29.05.11
✎
18:08
|
сотня
|
||||||||||
101
Rie
29.05.11
✎
18:10
|
+(99) Это в некотором роде аналог конструкции with в паскале или VB.
(Ну а будь Конфигуратор помощнее - тут прекрасная возможность для оптимизации; более изощрённые компиляторы её и делают). |
||||||||||
102
Alexandr Puzakov
29.05.11
✎
18:11
|
(98) я тоже самое и сказал.
|
||||||||||
103
Rie
29.05.11
✎
18:16
|
(102) Не совсем то же самое. У Вас был перечень случаев, когда второй вариант неработоспособен. Но не обязательно будет работоспособен именно второй вариант (даже в указанных случаях). Кроме того, второй вариант может оказаться неработоспособным и в других случаях (когда переменная Отказ будет определена). И это будет ещё хуже: ошибку, связанную с неопределённой переменной ловить проще, чем ошибку, связанную с тем, что переменная _почему-то_ имеет не то значение, которое ожидалось.
Тут суть как раз в том, что сравниваются НЕэквивалентные конструкции. И говорить, какая из них лучше/хуже - бессмысленно. |
||||||||||
104
Эльниньо
29.05.11
✎
18:56
|
А что лучше:
Если Тогда Если Тогда Если Тогда Если Тогда Если Тогда Если Тогда Если Тогда КонецЕсли; КонецЕсли; КонецЕсли; КонецЕсли; КонецЕсли; КонецЕсли; КонецЕсли; //или Если Тогда Продолжить; КонецЕсли; // и т.д. ? |
||||||||||
105
gae
29.05.11
✎
19:03
|
(0) В первом варианте значение будет присвоено всегда.
Во втором - только при выполнении условия. В контексте того, что ловим Отказ - 2-ой вариант, а то первым можно и сбросить. 2 вариант |
||||||||||
106
1C master
29.05.11
✎
19:45
|
Наглядно, однозначно.
2 вариант |
||||||||||
107
Alexandr Puzakov
29.05.11
✎
19:48
|
(103) не видя всего кода бессмысленно говорить об эквивалентности/не эквивалентности.
Если это кусок кода из процедуры ОбработкаПроведения(), ПередНачаломЗаботыСистемы() или еще какой системной процедуры с параметром Отказ, или произвольной процедуры/функции, гарантированно имеющей параметр/переменную Отказ с гарантированным булевым значением, то в обоих случаях получим абсолютно одинаковый результат. (104) это плохой стиль программирования. Нужно избегать подобных "цепочек" логических условий. |
||||||||||
108
Rie
29.05.11
✎
19:50
|
(107) Отнюдь не одинаковый.
Пример - в (33). (Ранее установленное для Отказ значение Истина вариант 1 может сбросить в Ложь - что, скорее всего, неправильно). |
||||||||||
109
Rie
29.05.11
✎
19:52
|
+(108) Ну и разговор об эквивалентности/неэквивалентности фрагментов кода отнюдь не бессмысленен. Как раз наоборот - структурное программирование, которым пользуются уже "на автомате" как раз и построено на _отношениях_ между "входом" и "выходом" ("преобразователи предикатов").
|
||||||||||
110
Alexandr Puzakov
29.05.11
✎
20:01
|
(108) да нет же, в (0), при заранее существующей переменной Отказ с булевым значением, результаты кода будут абсолютно одинаковы, даже если в обоих изменить условие сравнения (но, разумеется, оставить его одинаковым в обоих вариантах)
|
||||||||||
111
Rie
29.05.11
✎
20:07
|
(110) См. (33).
До выполнения этих фрагментов: Отказ имеет значение Истина. После выполнения варианта 1 Отказ получит значение ЛОЖЬ, если Источник.Дата>=ДатаПроверки. После выполнения варианта 2 при том же условии Отказ будет по прежнему иметь значение Истина. |
||||||||||
112
Rie
29.05.11
✎
20:09
|
+(111) Иными словами, в случае, если это - обработчик события, то при варианте 1 если Источник.Дата>=ДатаПроверки, то результаты _предыдущих_ проверок будут в итоге проигнорированы - а это уже ошибка. Причём проявится, скорее всего, не сразу - со всеми вытекающими отсюда очень неприятными последствиями.
|
||||||||||
113
Alexandr Puzakov
29.05.11
✎
21:24
|
(111) а, ну да. Теперь я понял.
|
||||||||||
114
Alexandr Puzakov
29.05.11
✎
21:27
|
Во втором варианте не хватает Иначе...
|
||||||||||
115
Stepa86
29.05.11
✎
21:44
|
я б так сделал: проверка отдельно, обработка результата проверки отдельно
Отказ = Не ДатаКорректна( Источник ); Функция ДатаКорректна( пИсточник ) Возврат пИсточник.Дата >= ПолучитьДатуБлаБлаБла(); КонецФункции |
||||||||||
116
Stepa86
29.05.11
✎
21:47
|
+(115) чтобы не тыкали в (111) сразу говорю, что если проверок несколько, то все их выношу в отдельный метод, а присвоение отказу тока единажды происходит
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |