Visual Basic for Application как система объектноориентированного программирования

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

Тема 8. Объективная сторона экологического правонарушения

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

Реальная угроза причинения вреда как обязательный признак общего состава экологического правонарушения. Причинная связь между противоправным деянием и вредоносными последствиями.

Факультативные признаки объективной стороны экологического правонарушения. Значение признаков объективной стороны для классификации правонару-

шений в области охраны окружающей среды.

Тема 9. Субъект экологического правонарушения

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

Тема 10. Субъективная сторона экологического правонарушения

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

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

.Поступила 17.05.06.

VISUAL BASIC FOR APPLICATION КАК СИСТЕМА ОБЪЕКТНО-ОРИЕНТИРОВАННОГО ПРОГРАММИРОВАНИЯ

С. В. Гордина, доцент кафедры информационных систем в экономике и управлении МГУ им. 77. 77. Огарева

В статье рассматриваются основные понятия объектно-ориентированного программирования. Обосновывается необходимость изучения студентами экономических специальностей в курсе информатики системы объектно-ориентированного программирования Visual Basic for Application.

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

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

© С. В. Гордина, 2006

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

Перечисленным требованиям удовлетворяет компьютерная экономическая система, базирующаяся на информационной технологии Visual Basic for Application (VBA) в ее варианте, созданном фирмой Microsoft Office как надстройка над табличным процессором Excel.

Табличный процессор Excel изучается в курсе информатики во всех экономических вузах (не только в России, но и за рубежом), поэтому при использовании языка VBA экономист не испытывает тех сложностей, которые неизбежно возникают, когда приходится приступать к работе с совершенно незнакомой информационной технологией.

Кроме того, Excel обеспечивает практически мгновенный пересчет результатов при вводе либо изменении исходных данных; имеет развитую систему встроенных математических, статистических, финансовых функций, способен проводить вычисления с учетом условий, включая логические операции; имеет аппарат «Поиск решения», который позволяет проводить решения задач оптимизации с разнообразными видами ограничений, с линейными и нелинейными целевыми функциями.

Табличный процессор Excel входит в состав пакета Microsoft Office, который обеспечивает простую связь между документами, созданными различными

приложениями, в первую очередь наиболее известными — редактором текстов Word и системой управления базами данных Access. Такого рода механизм носит название OLE (Object Linking and Embedding) и позволяет осуществлять связь Excel с объектами, созданными другими приложениями, и встраивать такие объекты в рабочий лист таблицы.

Диалоговый характер Excel обусловлен самой сущностью данного табличного процессора.

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

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

Основное отличие VBA от языка Visual Basic (VB) заключается в том, что процедуры VBA выполняются только в среде поддерживающего его приложения, а с использованием V В создаются самостоятельные программы. VBA, как и VB, является языком визуального и событийно управляемого программирования. В нем есть возможность создания форм со стандартным набором элементов управления и написания процедур, обрабатывающих события, которые возникают при тех или иных действиях системы и конечного пользователя. VBA позволяет работать с огромным набором объектов — по существу, в нем определены все объекты Microsoft Office.

Прежде чем программировать на VBA, следует запустить табличный процессор Excel.

Для входа в среду VBA Excel можно воспользоваться одним из следующих способов:

— выполнить команду Tool (Сервис) / Macro (Макрос) і Visual Basic Editor (Редактор Visual Basic)',

— воспользоваться комбинацией клавиш <Alt> • •• !• 11

— нажать кнопку Visual Basic Editor (Редактор Visual Basic) на панели инструментов Visual Basic.

В результате этих действий на экране появится окно редактора Visual Basic (рис. 1).

Описание основных компонентов окна VBA приведено в таблице.

I Microsoft Visual Basic - Книга! - [Модуль! (Программа)]

Файл Правка Вид Вставка Формат Отладка Запуск Сервис Окно ?

- У I 41 а

Проект - VBAProject

тт\\а

ЕГ

VBAProject

В & Microsoft Excel Объекть ThisWorkbook Щ Листі

•BQ Лист2

В -0S Модули

Модуль1

Свойства - Модуль1

| Модуль! Модуль

По алфавиту і По категориям ]

1 (Name) | Модуль1

II

If If

шш

»

____

Окно программного кода

Р и с. 1. Окно редактора Visual Basic

Компонент VB А Описание Способ активизации компонента

1 2 3

Окно проекта (Project Содержит иерархический список элемен- Нажмите сочетание клавиш

Window) тов пользовательского проекта VBA. Это могут быть объекты Excel высокого уровня, такие как рабочие листы, диаграммы и объект ThisWorkbook (ссылка на рабочую книгу, в которой находится проект) Список может также включать модули классы модулей и пользовательские диалоговые окна (формы) -( 1гГ-- + Я

Окно свойств (Properties Позволяет просматривать и устанавли- Нажмите клавишу <Б4>

Window) вать свойства различных объектов проекта (включая объекты Excel), изображенных в окне проекта. Свойства могут быть выведены как в алфавитном порядке, так и по логическим категориям

Окно редактора кода

Окно редактора пользовательских форм

Окно просмотра объектов

Окно отладки, окно локальных переменных и окно контрольных значений

Место ввода и редактирования кода VBA. Два раскрывающихся списка помогают ориентироваться в программе. Раскрывающийся список объектов (слева) позволяет выбрать объект, код которого нужно посмотреть. Раскрывающийся список процедур (справа) позволяет выбрать конкретную подпрограмму для просмотра

Дозволяет создавать пользовательские диалоговые окна, помещать на них элементы управления ActiveX и тестировать их

Помогает находить и использовать объекты, необходимые пользовательским приложениям. Для вывода окна можно использовать команду Вид, Просмотр объектов

Все эти окна помогают при отладке программы. Каждое можно открыть с помощью команд меню Вид

Выделите необходимый объект в окне проекта и щелкните по кнопке View Code (Просмотр кода) на панели инструментов вверху окна проекта

Добавьте в проект форму, выполнив команду меню Вставка,

UserForm

Нажмите клавишу <F2>

Выполните команду Вид и выберите необходимое

В основе объектно-ориентированно-го программирования (ООП), управляемого событиями, лежат понятия объект, класс, событие, инкапсуляция, наследование и полиморфизм.

В качестве объектов могут рассматриваться конкретные предметы, а также абстрактные и реальные сущности. Например, объектами могут быть покупатель, фирма, производящая товары, заказ на поставку и др. В частном случае в VBA объектами выступают элементы пользовательского интерфейса, которые создаются на форме пользователя (UserForm) или на рабочем листе, а также рабочая книга и ее элементы.

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

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

задачи, которые может выполнить данный объект. Методы, по сути дела, — это сегмент программного кода, внедренный в объект.

Каждый объект представляет некоторый класс однотипных объектов, т. е. является экземпляром класса. Классу присущи методы и свойства.

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

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

Иногда свойства и методы объекта оказываются связанными в том смысле,

что выполнение некоторого метода приводит к изменению свойств объекта. В свою очередь, изменение некоторых свойств может вызвать наступление событий.

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

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

Наследование есть возможность выделить свойства, методы и события одного объекта и приписать их другому

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

Полиморфизм — это способность объектов выбирать операции на основе данных, принимаемых в сообщении. Каждый объект может реагировать на одно и то же сообщение по-своему. Например, команда Print будет по-разному воспринята черно-белым и цветным принтерами.

Суть программирования на VBA заключается в двух понятиях: «событие» и «отклик на него». Если пользователь ка-ким-либо способом действует на систему, допустим, щелкает по кнопке, то в качестве отклика выдается код созданной пользователем процедуры. Процедуры этого вида, генерирующие отклик на события, называются процедурами обработки событий. Если такой отклик не получен, то система никак не будет реагировать на событие. Следовательно, задачей пользователя является создание программного кода процедур для обработки различных событий, которые представляются важными с точки зрения функционирования программ.

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

Та часть программы, которая видна на экране при ее создании, называется проектом (рис. 2).

Project - VBAPmject

Q

E § VBAProject

B-£§ Microsoft Excel Objects S] Листі

H] Лист2

Я] ЛистЗ

© ЭтаКнига É-Q Forms

а UserForml É-Q Modules

<iâ|. Modulei Й-Ö Class Modules ¿51 Class!

P и с:. 2. Пример проекта VBA для приложений Excel

Проект VBA имеет иерархическую структуру и включает в себя различные объекты Excel, формы, стандартные модули и модули класса.

Объектами Excel, входящими в проект, являются рабочие книги (Workbook), рабочие листы (Worksheets) и диаграммы (Charts). С каждым из этих объектов связан специальный модуль, в который может быть помещен программный код, выполняющий определенные действия. Например, в модулях рабочих листов записываются процедуры обработки событий рабочих листов и элементов управления, размещаемых на рабочих листах.

Формы являются основными конструкциями приложения визуальной среды, с которыми взаимодействует пользователь. Форма обладает своими свойствами, событиями и методами. В модулях форм записываются коды процедур обработки событий формы и элементов управления, размещенных на ней.

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

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

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

Набор всех программных модулей, связанных с рабочей книгой Excel, называется проектом.

Таким образом, проект включает две части: интерфейсную, т. е. видимую при выполнении программы, и программную, которая сосредоточена в различных модулях и реализует выполнение заданных действий.

Весь проект представляет собой один файл — рабочую книгу — и сохраняется вместе с ней.

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

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

Поступила 11.09.06.

СПЕЦИФИКА СОВРЕМЕННОЙ СИСТЕМЫ МЕЖДУНАРОДНЫХ ОТНОШЕНИЙ В КОНТЕКСТЕ ИЗУЧЕНИЯ ИНТЕГРАЦИОННЫХ ПРОЦЕССОВ ЭПОХИ ПОСТМОДЕРНА

О. В. Бахлова, доцент кафедры всеобщей истории и мирового политического процесса МГУ им. 77. 77. Огарева

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

© О. В. Бахлова, 2006