Глобальные переменные

addewyd@

Member
Как известно, глобальные переменные — абсолютное зло.
Но бывают ситуации, когда неплохо бы иметь пару-тройку глобальных.
Поясню на примере.

Имеется программа, работающая с УИ, состоящая из множества вызовов отдельных скриптов (процедур), с приличной вложенностью. Одна из самых вызываемых "активностей" — "клик по элементу"
И, чтобы не плодить в коде литералы xpath, они собраны в одно файле в виде хеш-таблицы ident: xpath.

Создаём скрипт, который принимает параметром ident и возвращает xpath и в нужном месте вызываем его. И таким образом, упомянутый скрипт ( с учётом циклов, вложенности) за сеанс работы программы может вызываться сотни (а то и тысячи раз), каждый раз чтение файла, десериализация...

Конечно, есть выход: вызывать эту процедуру один раз при старте программы и прокидывать хештаблицу далее параметром до места назначения. Очевидное неудобство — дополнительный параметр для каждого скрипта в программе.

Вот если бы была возможность задать глобальную переменную... Бонус — скорость выполнения значительно возрастёт.
 
Верх