|   |   | 
| 
 | Когда фунциональные опции применяют ? | ☑ | ||
|---|---|---|---|---|
| 0
    
        EarthsSoul 28.07.17✎ 07:06 | 
        Добрый день
 Подрядчик выполняет работы, я веду аудит кода. Так вот было множество замечаний к коду и одно из них обращение к получению констаны (прямо процедурах написано Константы.ВидНоменклатурыСпециальный.Получить() ). После рефакторинга со стороны подрядчика, обращение к константам переделали на обращение к функциональным опциям ПолучитьФункциональнуюОпцию("ВидНоменклатурыСпециальный") Я предполагал в не частых случаях переделать на предопределенные значения справочника вида номенклатуры, в случаях почаще использовать параметры сеанса. Вот у меня вопрос не ужели функциональные опции целесообразно так использовать ? Я думал у них совсем другое назначение. Можно ли завявить что обращение к ПолучитьФункциональнуюОпцию("ВидНоменклатурыСпециальный") Более оптимально в коде чем Константы.ВидНоменклатурыСпециальный.Получить() ? | |||
| 1
    
        Рэйв 28.07.17✎ 07:10 | 
        А замерять  время выполнения не позволяет длина цепи от батареи?     | |||
| 2
    
        EarthsSoul 28.07.17✎ 07:13 | 
        Сейчас попробую, интересно мнение экспертов, потом напишу результаты замеров ))     | |||
| 3
    
        igorPetrov 28.07.17✎ 07:37 | 
        Вот точно, людям делать нечего...     | |||
| 4
    
        EarthsSoul 28.07.17✎ 07:37 | 
        Да лучше, но мне кажется это оригинальное использование функциональных опций
 Количество обращений Чистое время Процент ИзПараметрыСенаса = ПараметрыСеанса.СпецВидНоменклатуры; 100 000 3,367411 3,91 ИзСправочника = Справочники.ВидыНоменклатуры.СпецВидНоменклатуры; 100 000 5,036589 5,84 ИзФункциональнойОпции = ПолучитьФункциональнуюОпцию("СпецВидНоменклатуры"); 100 000 9,122305 10,59 ИзКонастаны = Константы.СпецВидНоменклатуры.Получить(); 100 000 58,387468 67,75 | |||
| 5
    
        igorPetrov 28.07.17✎ 07:40 | 
        (4) Что тебе это дает? В коде 100 000 раз получают значение константы? Если да, то вопрос зачем? Если нет, так какая разница?     | |||
| 6
    
        yzimin 28.07.17✎ 07:50 | 
        (0) А если константа не привязана к ФО?     | |||
| 7
    
        mikeA 28.07.17✎ 08:29 | 
        (3) +1
 (0) Сделай справочник с настройками и код получения в общем модуле с повторным использованием значений если уж так интересует быстродействие. Только imho это последнее что нужно оптимизировать. А про справочник кстати вспомнишь когда таких настроек станет over 9000 )) | |||
| 8
    
        igorPetrov 28.07.17✎ 08:37 | 
        Такого "аудитора" гнать нужно тряпками... имхо, ситуацию в контексте смотреть нужно. И не высасывать проблему из пальца.     | |||
| 9
    
        EarthsSoul 28.07.17✎ 08:49 | 
        (8) что самоценка храмает ? Что за нападки ?     | |||
| 10
    
        bodri 28.07.17✎ 08:50 | 
        Если не изменяет память, обращение к функциональной опции всегда в привилегированном режиме, а к константе нет, поэтому целесообразней пользоваться ФО, чтоб не парится с правами на константу     | |||
| 11
    
        EarthsSoul 28.07.17✎ 08:55 | 
        (10) есть такой момент
 плюс ко всему функциональная опция является оберткой которая может хранится в разных структурах данных, и замена источника информации может быть полезна. | |||
| 12
    
        Галахад гуру 28.07.17✎ 09:01 | 
        (4) Можно ли завявить что обращение к ... Более оптимально в коде чем ...
 В 6 раз. Чего еще надо? | |||
| 13
    
        Джо-джо 28.07.17✎ 09:03 | 
        (9) "храмает"
 Проведите лучше аудит учебника по русскому языку | |||
| 14
    
        Джо-джо 28.07.17✎ 09:04 | 
        Кстати, пробел перед знаками препинания не ставится     | |||
| 15
    
        igorPetrov 28.07.17✎ 09:09 | 
        (14) Вот так и код аудирует.     | |||
| 16
    
        Diversus 28.07.17✎ 09:15 | 
        По факту, что подрядчик переделал - это то же самое. Функциональная опция скорее всего хранится в константе. Раньше проверяли константу, сейчас опцию, значение которой в этой же константе =)     | |||
| 17
    
        Diversus 28.07.17✎ 09:18 | 
        Если константа читается часто, имеет смысл вынести ее в модуль с повторным использованием возвращаемых значений.     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |