Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ответы к экзамену ППП 2013.docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
535.36 Кб
Скачать

4 Типы модулей программного проекта. Разделы модуля. Защита кода проекта. Область видимости модуля, переменных. Окна отладки vba

Проект - это совокупность модулей.

Модули, составляющие программный проект, могут быть следующих типов:

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

2.   Программные модули, создаваемые программистом, так называемые стандартные модули.

3.  Модули классов, создаваемые программистом.

4.  Модули макросов, создаваемые Macrorecorder.

 

Три основные причины, по которым следует создавать небольшие стандартные модули:

  1. Эффективность.

  2. Переиспользование

  3. Понимание и Читабельность.

Каждый модуль вне зависимости от его типа имеет всего два раздела:

  1. Раздел объявлений переменных уровня модуля.

  2. Раздел методов модуля. В этом разделе располагаются процедуры и функции.

Свойства проекта

Проект имеет несколько терминальных свойств (характеристик), которые можно задать в окне "Project Properties" (Свойства Проекта), оно выводится после щелчка правой кнопкой мыши по названию проекта или одной из его папок в окне проектов и последующего выбора из контекстного меню команды Project Properties.

Защита проекта

Вкладка Protection позволяет защитить проект от просмотра и редактирования. В большинстве случаев при передаче документа пользователям, проект должен быть защищен как от несанкционированного просмотра его модулей, так и коррекции программного текста. Включив флажок "Lock project for viewing", Вы закрываете проект, его структура будет недоступна для просмотра, если неизвестен пароль.

Проект и область видимости модулей

Каждый компонент модуля - переменная или метод может быть снабжен спецификатором области видимости, который имеет два возможных значения - Public и Private. Если задан спецификатор Public, то это означает, что компонент общедоступен в пределах всего проекта. Спецификатор Private делает компонент закрытым для других модулей проекта. Он видим только в своем родном модуле.

 

Если при объявлении переменных модуля спецификатор области видимости опущен и указано только ключевое слово Dim, то такие переменные считаются закрытыми, - действует спецификатор Private. Для методов спецификатор области видимости можно опускать. В этом случае действует следующее правило. Все методы стандартных модулей имеют по умолчанию спецификатор Public и являются доступными во всем проекте. Методы модулей - классов и модулей, связанных с объектами, по умолчанию являются закрытыми и имеют статус Private.

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

Область видимости переменных

Существуют  три типа области видимости переменной:

  • переменные уровня процедуры распознаются только в процедуре, в которой они описаны. Они описываются при помощи инструкций Dim или Static. Такие переменные называются локальными;

  • переменные уровня модуля используются только в модуле, в котором они описаны, но не в других модулях данного проекта. Описываются при помощи оператора Dim или Private в области описания модуля, перед описанием процедур;

  • переменные уровня модуля, описанные при помощи инструкции Public являются доступными для всех процедур проекта. Такие переменные называются открытыми.

  • Переменные стандартного модуля, описанные с помощью инструкции Global, являются доступными для всех модулей проекта и называются глобальными.

Окна отладки:

Окно Immediate (Окно проверки)

 Окно Locals (Окно локальных переменных)

Окно Watches (Окно контрольных значений)