Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
1к 2 семестр / Lektsii_po_informatikei / ЛЕКЦИЯ_16_Проектирование программного обеспечения АИС.doc
Скачиваний:
103
Добавлен:
02.04.2015
Размер:
165.38 Кб
Скачать

Модульное программирование

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

  • один вход и один выход;

  • функциональная завершенность и логическая независимость;

  • слабые информационные связи с другими модулями;

  • обозримый размер и сложность программной реализации.

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

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

Применительно к приложениям Microsoft Office разрабатывается проект на языке VBA (Visual Basic for Application), который состоит из модулей двух типов:

  • стандартные модули – содержат общие процедуры подпрограммы и процедуры функции;

  • модули классов объектов (форм, отчетов) – содержат процедуры подпрограммы и процедуры функции, которые могут использоваться только в пределах класса объектов.

Объектно-ориентированный подход к проектированию программного обеспечения

Объектно-ориентированное проектирование (Object Oriented Programming — OOP) использует обобщенное понятие объекта.

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

Для обращения к свойству объекта указывается полная спецификация объекта с учетом иерархии вложения объектов:

Объект1.Объект2.Свойство_объекта_2

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

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

Методы обработки событий объектов запускаются в момент наступления заранее обусловленных событий1, представляются в виде процедур (функций) обработки. При запуске метода обработки можно задавать параметры, например:

Объект.Метод Параметр1, Параметр2,..

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

<Переменная> =Объект.Метод

Объекты обладают смысловой определенностью, автономностью, рассматриваются как независимые единицы проектирования и реализации. Объекты объединяются в классы однородных объектов (рис. 4), что позволяет типизировать свойства и методы обработки объектов одного класса.

КЛАСС

ОБЪЕКТ 1

ОБЪЕКТ t

Событие n

Свойство k

Метод n

Свойство 1

Событие 1

Метод 1

Рисунок 4

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

Объектно-ориентированный подход при разработке объектов предполагает:

  • типизацию свойств и методов класса объектов для их наследования членами класса;

  • инкапсуляцию (объединение) в объекте данных, свойств и методов обработки, «закрытость» и независимость при разработке приложений объектов друг от друга;

  • полиморфизм объектов — способность объекта принимать различные формы, многозначность применения методов объектов;

  • многократное использование программного кода объектов.

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

Объектно-ориентированный подход для разработки приложений рассматривается в следующем контексте:

  • выбор типовых/создание новых классов объектов;

  • создание экземпляров объектов;

  • задание значений свойств объектов;

  • определение событий, наступление которых обеспечивает запуск методов;

  • создание методов обработки событий.

Большинство существующих методов ООП включают язык моделирования. Наиболее удобным является унифицированный язык моделирования UML, с помощью которого объединены наиболее продуктивные методики проектирования Буча, Рамбо, Якобсона1. Для моделирования используются:

  1. Диаграмма вариантов использования (use case diagrams) – моделирование бизнес-процессов;

  2. Диаграмма классов (class diagrams) – моделирование статической структуры классов объектов и связей между ними;

  3. Диаграммы поведения системы (behavior diagrams);

  4. Диаграммы взаимодействия (Interaction diagrams) – моделирование процесса обмена сообщениями между объектами: последовательности и кооперативные;

  5. Диаграммы состояний (state chart diagrams) – моделирование поведения системы при переходе из одного состояния в другое;

  6. Диаграммы реализации (implementation diagrams), в том числе диаграммы компонентов (component diagrams) – для моделирования иерархии компонент системы и диаграммы размещения (deployment diagrams) – для моделирования физической архитектуры системы.