русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Основные типы взаимодействия


Дата добавления: 2015-07-09; просмотров: 2947; Нарушение авторских прав


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

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

Пожалуй, наиболее понятным способом взаимодействия объектов является случай, когда один объект включает в себя в качестве составляющих частей объекты других классов. В этом случае между классами устанавливается отношение типа “часть-целое”. В оригинальной англоязычной литературе такое отношение описывается термином “has-a” (имеет, содержит, включает в себя). В теории ООП такой тип отношения называют агрегацией. При этом различают строгую и нестрогую агрегацию. Нестрогая агрегация – это такое взаимодействие объектов, при котором составной объект и образующие его части могут существовать независимо и отдельно друг от друга. Строгая агрегация или композиция возникает тогда, когда существование составного объекта зависит от существования входящих в него частей. Более подробно агрегация, композиция и их программная реализация рассматриваются в следующем разделе.

Вторым важнейшим способом взаимодействия классов является обобщение, при котором один из классов является более общим по отношению к другим более конкретным классам. В объектных языках программирования обобщение реализуется с помощью механизма наследования, когда свойства и методы исходного класса могут наследоваться в нескольких производных классах. В англоязычной литературе этот тип взаимодействия определяется как “is-a” (является, есть). Более подробно наследование описывается в разделе 2.3.



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



<== предыдущая лекция | следующая лекция ==>
Задание 2. Самостоятельно придумать и описать на разных языках 2-3 класса для объектов разной природы. | Агрегация и композиция


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.004 сек.