logo
Лекции_ПиОА[1]

13.4. Техника написания кода

Как и в любом другом языке программирования, в VB имеются собственные правила организации, редактирования связей и форматирования программ. Программы VB хранятся в модулях. Существует три вида модулей: модули формы и класса, стандартный модуль. Простые приложения могут состоять из одного модуля формы, и весь программный код приложения находится в нем. При дальнейшей модификации по мере увеличения размеров приложения в них добавляются дополнительные модули формы. Со временем обнаруживается, что в приложении появляется некоторый общий программный код, выполняемый в нескольких модулях формы. Дублирование этого кода в каждом соответствующем модуле формы неэффективно, поэтому создается отдельный модуль, содержащий процедуру, выполняющую этот общий код. Такой отдельный модуль должен быть стандартным модулем. Через какое-то время можно создать библиотеку совместно используемых модулей. Каждый стандартный модуль, модуль формы или класса может содержать:

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

Стандартные модули являются хранилищами процедур и объявлений, которые доступны для других модулей приложения. Они могут содержать глобальные (доступные всему приложению) или локальные (доступные на уровне модуля) объявления переменных, констант, типов, внешних процедур и процедур общего характера. Если не ссылаться на формы и элементы управления по имени, то стандартный модуль можно использовать в разных приложениях.

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

При запуске Редактора кода (Code Editor) появляется окно, в котором можно вводить текст программы (программный код). В какой-то мере редактор похож на специализированный текстовый процессор с набором функций, облегчающих ввод текста программы на языке Visual Basic. Так как работа с программным кодом осуществляется в модулях, то для каждого модуля, выбранного в Project Explorer (Проводник проекта), создается отдельное окно Code Editor. Код внутри каждого модуля разделен на отдельные секции (sections) для каждого объекта, содержащегося в модуле. Переключение между секциями осуществляется с помощью списка Object Listbox (Список объектов). В модуле формы этот список содержит общую секцию, секцию для самой формы и секцию для каждого элемента управления на данной форме. Для модуля класса список включает общую секцию и секцию класса, для стандартного модуля – только общую секцию.

Каждая секция может содержать несколько различных процедур, доступ к которым обеспечивается с помощью списка Procedure Listbox (Список процедур). Список процедур для модуля формы содержит отдельную секцию для каждой процедуры обработки события формы или элемента управления. Например, для элемента Label он включает в себя секции для событий change (Изменить), Сlick (Щелчок) и DblClick (Двойной щелчок). Список процедур для модуля класса содержит только процедуры событий для самого класса – Initialize (Инициализировать) и Terminate (Завершить). Для стандартных модулей не существует списка процедур событий, так как стандартный модуль не поддерживает события.

Список процедур для общей секции модуля содержит единственный выбор – секцию Declarations (Объявлений), в которую заносятся объявления локальных (доступных только данному модулю) переменных, констант и библиотек динамической компоновки (DLL). При добавлении процедур Sub или Function в модуль они также добавляются в список Procedure Listbox после секции Declarations.

В окне редактора Code Editor код может отображаться по разному. Можно выбрать режим, при котором отображается только одна процедура, или режим отображения всех процедур. В последнем случае процедуры отделяются друг от друга горизонтальной линией. Переключение между двумя этими возможностями происходит с помощью кнопок View Selection (Выбор вида), расположенных в левом нижнем углу окна редактора.