Имя: Пароль:
1C
1С v8
Функция с количеством параметров > 5, как лучше?
, , ,
0 WhiteCat
 
23.07.13
14:33
1. Одной структурой 50% (2)
2. Отдельными параметрами 25% (1)
3. Другим мега-способом 25% (1)
Всего мнений: 4

В неком модуле - сферической в вакууме - есть несколько функций, вызывать которые придется много и часто сторонним разработчикам, которые данный модуль будут использовать в своих конфах. Для облегчения работы с модулем предполагается передача в функцию большого количества параметров, вот живой пример:

Функция ДобавитьОбъектНаПанельЗадач(ДокументHTML,
ПанельЗадачСсылка,
ДеревоОбъектов,
ТаблицаОбъектов,
ОбъектПанелиЗадач = Неопределено,
ОбъектРодитель = Неопределено,
ОбъектИБ = Неопределено,
УИД = "",
ИдентификаторОбъекта = "",
ИдентификаторОписания = "",
ДополнительныеПараметры = Неопределено) Экспорт

Логика работы модуля подразумевает, что данные функции при его работе будут вызываться достаточно часто. Как в этом случае лучше реализовать передачу параметров в функцию, так как указано выше, каждый параметр отдельно, или через один параметр-структуру? С одной стороны, структуру надо создать перед вызовом функции, с другой - в структуре поля именованные и будет проще присваивать значения ее полям-параметрам, к тому же структуру можно создать один раз и просто менять значения ее полей. Структуру внутри тела функции еще надо разобрать на отдельные параметры, что скажется (скажется ли?) на быстродействии при ее частом вызове.
Ммммм?

ЗЫ: про рекомендации от 1С я в курсе, мне хочется знать мнение реальных людей, который кодят код.
17 IVT_2009
 
23.07.13
15:08
одной структурой

Одной структурой
20 beer_fan
 
23.07.13
15:10
Мне кажется, в таких случаях структура удобнее.

Одной структурой
Ошибка? Это не ошибка, это системная функция.