|   |   | 
| 
 | Как правильнее писать функции в конструкции "Если Тогда" | ☑ | ||
|---|---|---|---|---|
| 0
    
        xsnika 30.06.17✎ 12:47 | 
        В общем случае как правильнее писать функции в конструкции "Если Тогда"
 При этом пока «Переменная» используется 1 раз в процедуре Вариант 1 Переменная = ПолучитьЗначениеБулево(); Если Переменная Тогда …. Вариант2 Если ПолучитьЗначениеБулево() Тогда …. Аргументируйте свое мнение | |||
| 1
    
        dezss 30.06.17✎ 12:49 | 
        Если это значение используется в дальнейшем, то вариант 1, если нет, то вариант 2.     | |||
| 2
    
        svsvsv 30.06.17✎ 12:50 | 
        +1     | |||
| 3
    
        svsvsv 30.06.17✎ 12:50 | 
        +(1)     | |||
| 4
    
        lodger 30.06.17✎ 12:51 | 
        к (1) +100500.
 если переменная из условия потом используется, то лучше завести переменную и вычислить 1 раз. или часть. иначе можно и в "если ..." посчитать один раз. | |||
| 5
    
        Кирпич 30.06.17✎ 12:54 | 
        (0) в идеале, программа должна быть понятной, короткой и быстро работать. неужели этому сейчас на информатике не учат.     | |||
| 6
    
        xsnika 30.06.17✎ 12:58 | 
        (5) А вам как понятнее в отладчике переменную смотреть или функцию выделять смотреть что она вернёт? Мне удобнее анализировать вариант 1, писать удобнее/быстрее  вариант2     | |||
| 7
    
        Buster007 30.06.17✎ 13:01 | 
        (6) а в ПолучитьЗначениеБулево мегазапрос     | |||
| 8
    
        Кирпич 30.06.17✎ 13:02 | 
        (6) ну и делай вариант 1. никто не запрещает     | |||
| 9
    
        xsnika 30.06.17✎ 13:02 | 
        может быть и "мегазапрос"     | |||
| 10
    
        xsnika 30.06.17✎ 13:02 | 
        меня смущает, что перемена будет висеть всю процедуру в памяти     | |||
| 11
    
        Рэйв 30.06.17✎ 13:03 | 
        (10)Если смущает - очисти ее и не смущайся     | |||
| 12
    
        xsnika 30.06.17✎ 13:04 | 
        (11) тогда это лишний код     | |||
| 13
    
        Рэйв 30.06.17✎ 13:05 | 
        (12)
 Переменная=""; ну так нагрузит систему шописец просто | |||
| 14
    
        kuzyara 30.06.17✎ 13:07 | 4. Не рекомендуется в названиях процедур и функций описывать типы принимаемых параметров и (или) возвращаемых значений.
(с) https://its.1c.ru/db/v8std | |||
| 15
    
        kuzyara 30.06.17✎ 13:08 | 6.1. Имена функций в общем случае следует образовывать от описания возвращаемого значения.
 | |||
| 16
    
        Mankubus 30.06.17✎ 13:08 | 
        с помощью этого хотите оптимизировать базу? лучше про индексы почитать     | |||
| 17
    
        kuzyara 30.06.17✎ 13:09 | Вариант3 
так правильней | |||
| 18
    
        Провинциальный 1сник 30.06.17✎ 13:10 | 
        (15) Еще бы можно было в функциях без параметров опускать скобки, как в паскале - было бы совсем круто)     | |||
| 19
    
        xsnika 30.06.17✎ 13:15 | 
        (16) нет, вопрос теоретический     | |||
| 20
    
        xsnika 30.06.17✎ 13:17 | 
        (15) сейчас вопрос не об именах, хотя замечание верное     | |||
| 21
    
        svsvsv 30.06.17✎ 13:18 | 
        (17) - это вариант 1 скорей, а не вариант 3.
 Здесь ведь речь идет идет не о правильности наименования, а о том, создавать ли отдельную переменную | |||
| 22
    
        svsvsv 30.06.17✎ 13:19 | 
        (21) вернее это вариант 2, а не 3     | |||
| 23
    
        dezss 30.06.17✎ 14:16 | 
        Это все проходили еще на первом курсе. Причем, в самом начале первого курса.
 Всегда надо искать оптимальный вариант между ресурсами проца и памятью. И в каждом конкретном случае надо определять что будет оптимальней. (6) какая разница? и переменную можно обозвать черти как и функцию, и придется смотреть что она вернет, так что определение переменной читабльености кода не добавит, а даже наоборот, ухудшит, если эту переменную определять левой задней пяткой в самой глуши кода. | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |