Access 2002

Кешируйте ссылки на объекты


Поскольку при программировании в Access вы чаще всего имеете дело с объектами, вам постоянно приходится считывать и устанавливать свойства форм, отчетов, элементов управления и других объектов приложения. Обычно для обращения к ним используется примерно такой оператор: strCaption – FormsCfrmTest) .cmdButtonl. Caption

Если вам нужна одна-единственная ссылка на объект, оптимизировать здесь нечего. А вот если вы обращаетесь к нескольким свойствам объекта или работаете с ним в цикле, то можете ускорить обращения к объекту, запомнив ссылку на него в переменной и обращаясь к его свойствам через эту переменную.

Например, если вы обращаетесь к нескольким свойствам некоторого элемента управления, то вместо того чтобы каждый раз действовать через коллекцию Forms.

Даже в этом простом примере, когда мы уменьшили цепочку ссылок только «на одну точку», код был выполнен за время, составляющее лишь 40% от времени исходного варианта. Очевидно, что чем сильнее вы сокращаете цепочку ссылок, тем больший выигрыш во времени получаете. (Просмотрите также код тестовых процедур Test2a и Test2b в модуле класса OptimizingTests.)

Чем больше точек в ссылках на объекты, тем медленнее выполняется код. Поэтому старайтесь, чтобы их было как можно меньше.

Тест 3: Используйте Len() для проверки нулевой длины строк

Существует несколько способов проверки того, имеет ли строка нулевую длину. Один из них заключается в сравнении строки с пустой строкой, второй — в сравнении ее длины с нулем. Сравнить длину строки, возвращаемую функцией

Len(), с нулем значительно быстрее. Это может показаться вам странным — неужели вызов функции выполняется быстрее простого сравнения? Тем не менее это так.

Комментарии закрыты