4.5. Объектно-ориентированные информационные технологии
Объектно-ориентированная технология основана на выявлении и установлении взаи-модействия множества объектов и используется чаще всего при создании компьютерных систем на стадии проектирования и программирования.
Объектно-ориентированный подход использует объектную декомпозицию, при которой статическая структура системы описывается в терминах объектов и связей между ними, а поведение системы описывается в терминах обмена сообщениями между объектами [6]. Объект - это предмет, событие, явление, которые выполняют определенные функ-ции и являются источником или потребителем информации. Объект системы обладает собственным поведением, моделирует поведение объекта ре-ального мира. В качестве объектов могут выступать, например, пользователи, программы, клиенты, документы, файлы, таблицы, базы данных и т.д.
Объект содержит инструкции (программный код), определяющие действия, которые может выполнять объект, и обрабатываемые данные.
Свойство - характеристика объекта, его параметр. Все объекты наделены определенными свойствами, которые в совокупности выделяют объект из множества других объектов.
Объект обладает качественной определенностью, что позволяет выделить его из мно-жества других объектов и обусловливает независимость создания и обработки от других объектов.
Например, объект можно представить перечислением присущих ему свойств:
ОБЪЕКТ_А (свойство_1, свойство_2,...., свойство_k).
Свойства объектов различных классов могут пересекаться, т.е. возможны объекты, об-ладающие одинаковыми свойствами:
ОБЪЕКТ_В (...свойство_n, свойство_m,...свойство_r,...)
ОБЪЕКТ_С (...свойство_n,.., свойство_r,...).
Одним из свойств объекта являются метод его обработки.
Метод - программа действий над объектом или его свойствами.
Метод реализуется с помощью программного кода, связанного с определенным объек-том; осуществляет преобразование свойств, изменяет поведение объекта.
Объект может обладать набором заранее определенных встроенных методов обработки, либо созданных пользователем или заимствованных в стандартных библиотеках, которые выполняются при наступлении заранее определенных событий, например, однократное на-жатие левой кнопки мыши, вход в поле ввода, выход из поля ввода, нажатие определенной клавиши и т.п.
По мере развития систем обработки данных создаются стандартные библиотеки мето-дов, в состав которых включаются типизированные методы обработки объектов определен-ного класса (аналог - стандартные подпрограммы обработки данных при структурном под-
ходе), которые можно заимствовать для различных объектов. Событие -изменение состояния объекта.
Внешние события генерируются пользователем (например, клавиатурный ввод или нажатие кнопки мыши, выбор пункта меню, запуск макроса); внутренние события генерируются системой.
Объектно-ориентированный подход является удобным средством моделирования предметной области.
Объектно-ориентированный подход базируется на объектной модели, включающей основные элементы:
■ абстрагирование;
■ инкапсуляция; - модульность;
■ иерархия.
Вспомогательными элементами модели, не являющиеся обязательными, выступают:
типизация;
параллелизм;
• устойчивость.
Дадим краткую характеристику указанных выше элементов.
Абстрагирование - это выделение существенных характеристик анализируемого объекта или процесса.
Абстрагирование позволяет сконцентрировать внимание на внешних особенностях объекта, позволяет отделить самые существенные особенности его поведения от несущественных деталей их реализации. Инкапсуляция - это процесс отделения друг от друга отдельных элементов объекта, определяющих его устройство и поведение. Инкапсуляция служит для того, чтобы изолировать интерфейс объекта, отражающий его внешнее поведение, от внутренней реализации объекта. Абстрагирование и инкапсуляция являются взаимно дополняющими операциями.
Модульность - это свойство системы, связанное с возможностью ее декомпозиции на ряд внутренне связных, но слабо связанных между собой модулей. Иерархия - это ранжированная или упорядоченная система абстракций, расположение их по уровням. Основными видами иерархических структур применительно к сложным системам являются структура классов (иерархия по номенклатуре) и структура объектов (иерархия по составу).
Типизация - это ограничение, накладываемое на класс объектов и препятствующее взаимозаменяемости различных классов. Типизация позволяет защититься от использования объектов одного класса вместо другого.
Параллелизм - это свойство объектов находиться в активном или пассивном состоянии и различать активные и пассивные объекты между собой. Устойчивость – это свойство объекта существовать во времени и/или в пространст-ве.
Декомпозиция сложных систем с целью построения их информационных моделей на основе объектно-ориентированного подхода оперирует понятиями: объект, класс, экземпляр.
Объект - это абстракция множества предметов реального мира, обладающих одина-ковыми характеристиками и законами поведения.
Основной характеристикой объекта является состав его атрибутов (свойств).
Атрибуты - это специальные признаки, посредством которых можно задать правила описания свойств объектов. Экземпляр объекта - это конкретный элемент множества. Например, объектом может являться лицевой счет клиента банка, а экземпляром этого объекта - конкретный номер счета.
Объекты могут объединяться в классы ( группы или наборы - в различных программ-ных системах возможна другая терминология).
Класс - это множество предметов реального мира, связанных общностью структуры и поведением.
Элемент класса - это конкретный элемент данного множества.
Например, выделяем класс лицевых счетов клиентов.
Обобщая эти определения, можно сказать, что объект - это типичный представитель класса, а термины «экземпляр объекта» и «элемент класса» равнозначны.
Понятия полиморфизма и наследования определяют эволюцию объектно-ориентированной системы, что подразумевает определение новых классов объектов на осно-ве базовых. Полиморфизм интерпретируется как способность объекта принадлежать более чем одному типу. Наследование выражает возможность определения новых классов на основе сущест-вующих с возможностью добавления или переопределения данных и методов. Использование объектно-ориентированных технологий позволяет иметь более эффек-тивные решения в системах организационного управления.
Объектно-ориентированные технологии реализуются на основе специальных языков моделирования. Язык моделирования – это нотация, которая используется методом для описания информационных процессов. Нотация представляет собой совокупность графических объектов, которые исполь-зуются в моделях. Примером нотации могут выступить диаграммы классов, определяющие, каким обра-зом представляются такие элементы и понятия, как класс, ассоциация и множественность.
Для различных методик объектно-ориентированного проектирования характерны следующие черты [10]:
объект описывается как модель некоторой сущности реального мира;
объекты, для которых определены места хранения, рассматриваются во взаимосвязи, и применительно к ним создаются программные модули системы.
Проводится объектно-ориентированный анализ:
осуществляется идентификация объектов и их свойств;
устанавливается перечень операций (методов обработки), выполняемых над каждым объектом, в зависимости от его состояния (событий);
определяются связи между объектами для образования классов;
устанавливаются требования к интерфейсу с объектами.
Основными этапами объектно-ориентированного проектирования выступают:
разработка диаграммы аппаратных средств системы обработки данных, показывающей процессоры, внешние устройства, вычислительные сети и их соединения;
разработка структуры классов, описывающей связь между классами и объектами;
разработка диаграмм объектов, показывающих взаимосвязи с другими объектами;
разработка внутренней структуры программного продукта.
В качестве современного средства моделирования можно указать на
унифицированный язык моделирования UML (Unified Modeling Language) [19, 28].
- Информационные технологии
- 1.2. Свойства информационных технологий
- 1.3. Особенности информационных технологий
- Глава 2. Автоматизированные информационные технологии
- 2.1. Характеристика автоматизированных информационных технологий
- 2.2. Виды обеспечения автоматизированных информационных технологий
- 2.3. Понятие платформы автоматизированных информационных технологий
- 2.4. Аппаратные средства в обеспечении автоматизированных
- 2.5. Операционные системы в обеспечении информационных технологий
- Глава 3. Основные информационные процессы в информационных технологий
- 3.1. Сбор информации
- 3.2. Обмен информацией
- 3.3. Накопление и Хранение информации
- 3.4. Обработка информации
- 3.5. Выдача информации
- 3.6. Обобщенная структура технологического процесса базовой информационной технологии
- 4. Конкретные информационные технологии
- 4.1. Предметные информационные технологии
- 4.2. Обеспечивающие информационные технологии
- 4.3. Функциональные информационные технологии
- 4.4. Понятие распределенной функциональной информационной технологии
- 4.5. Объектно-ориентированные информационные технологии
- 5. Стандарты пользовательского интерфейса информационных технологий
- 5.1. Стандартизация в области информационных технологий
- 5.2. Проектирование пользовательского интерфейса
- 5.3. Графический интерфейс пользователя
- 6. Гипертекстовые информационные технологии
- 6.1. Определение гипертекста
- 6.2. Структура гипертекста
- 7. Мультимедийные информационные технологии
- 8. Технологии искусственного интеллекта
- 8.1. Направления развития искусственного интеллекта
- 8.2. Данные и знания
- 8.3. Модели представления знаний
- 8.4. Стратегии получения знаний
- 8.5. Экспертные системы Классификация экспертных систем
- 8.5.1. Инструментальные средства построения экспертных систем
- 8.5.2. Технология разработки экспертных систем
- Вопросы по курсу: