Утилиты, Объект - Объектно-ориентированный подход и диаграммы классов в UML
В некоторых случаях при описании классов приходится часто пользоваться некоторыми глобальными функциями и переменными. Поэтому для удобства программирования введено такое понятие как утилита, где собираются все такие функции и переменные. Этой сущности в UML дан статус класса специального вида.
На диаграмме утилита изображается как класс со стереотипом "utility", и может иметь как атрибуты, так и операции.
Объект
Одним из самых важных понятий объектно-ориентированного программирования является понятие объект. Объект есть экземпляр класса, в некоторых специальных случаях он может быть экземпляром нескольких классов (на этом остановимся ниже). Объект обладает набором состояний, в которых он может находиться, строго определенным поведением и уникальным идентификатором; структура и поведение схожих объектов определяется в их общем классе.
Объекты могут исполнять определенные роли. Роль определяет отношение между классом и его экземплярами [4], выделяя определенное их подмножество. Считается, что все эти объекты похожи по своему поведению и состояниям, которые они могут принимать. Например, в системе может существовать много объектов класса Абонент, но часть из них в данный момент играет роль вызываемых, часть - вызывающих, а остальные свободны. Таким образом у этого класса мы выделили три роли.
Таким образом, в UML существует два понятия роли: роль у партнеров ассоциации и роль, которую могут исполнять объекты. В дальнейшем во избежание путаницы будем называть роль, исполняемую объектом, объектом-ролью.
Фактически, объект-роль - это некоторый промежуточный уровень абстракции между объектами и классами. Например, рассмотрим класс "человек": экземпляром этого класса является конкретный человек с именем и фамилией (его уникальным идентификатором) - Иванов Иван Петрович. У этого экземпляра могут быть состояния, например, "болен", "здоров", "спит" и т. п. В качестве объекта-роли можно привести роли: "сын", "жена", "муж". Таким образом, объект-экземпляр класса может исполнять разные роли, например роли "мужа" и "сына".
У объекта и объекта-роли есть уникальный идентификатор и строго определенные значения атрибутов.
На диаграмме объект и объект-роль представляется как прямоугольник с двумя отделениями. Верхнее отделение содержит имя объекта и имя его класса, по следующему синтаксису:
<Имя объекта>: <имя класса>
<Имя класса> есть полное имя класса, представителем которого он является. Стереотип класса может быть показан текстуально (в кавычках, строчкой выше) или иконкой в верхнем правом углу, но стереотип объекта должен совпадать со стереотипом его класса.
Объект может быть экземпляром не одного класса, а нескольких. Но чтобы эти классы можно было использовать подобным образом, они должны удовлетворять особому условию: среди них может быть лишь один класс реализации, остальные же классы могут быть только типами.
На рис. 19 показаны различные способы изображения объекта:
- А) развернутое изображение; Б) анонимный объект; В) сокращенное изображение.
Можно также показать, что объект может принимать некоторые состояния:
< Имя объекта> : <имя класса> '['<список состояний>']'
<список состояний> - список состояний объекта, в которых он может находиться во время своей "жизни" в системе. Состояния объекта формируются на этапе анализа проектируемой системы, то есть выделяются некоторые основные фазы, в которых может находиться объект. Далее при проектировании системы эти состояния могут корректироваться.
Второе отделение в прямоугольнике объекта содержит атрибуты объекта и их конкретные значения:
<Имя атрибута> : <тип> = <значение>
Объекты могут быть простыми и составными.
Составной объект
Составной объект представляет собой экземпляр составного класса, то есть класса, имеющего отношение композиции с другими классами. Таким образом, составной объект состоит из других (возможно, также составных) объектов.
Существует два вида представления составного объекта на диаграмме. Первый вариант (см. рис. 20): составной объект представляется так же, как и обычный, но нижнее отделение содержит части составного объекта (вместо списка значений атрибутов), соединенные связями (связь - аналог ассоциации для объектов). Второй вариант изображен на рис. 21.
Похожие статьи
-
Параметризованные классы (шаблоны) - Объектно-ориентированный подход и диаграммы классов в UML
В некоторых случаях в модели необходимы классы со схожей структурой, которые отличаются некоторыми параметрами. Например, имеется описание нескольких...
-
Ассоциация, Бинарная ассоциация - Объектно-ориентированный подход и диаграммы классов в UML
Ассоциация определяет некоторую связь между классами. Когда в системе будут созданы представители ассоциированных классов, они будут связаны так, как...
-
Атрибут - Объектно-ориентированный подход и диаграммы классов в UML
Атрибут (attribute) - это инкапсулируемый элемент данных класса, т. е. элемент данных, который содержится в объекте, принадлежащем описываемому классу. У...
-
Класс ассоциации, Агрегирование - Объектно-ориентированный подход и диаграммы классов в UML
Такой класс является обычным классом, присоединенным пунктирной линией к ассоциации. Его имя должно совпадать с именем ассоциации. Содержащаяся в нем...
-
Основные принципы Первая и главная идея, лежащая в основе объектно-ориентированного подхода такова: программная система представляется в виде множества...
-
Операция - Объектно-ориентированный подход и диаграммы классов в UML
Операция (operation) - это сущность, определяющая некоторое действие, которое может быть выполнено представителем класса. У операции есть имя и список...
-
Стадии разработки ПО - Объектно-ориентированный подход и диаграммы классов в UML
В [4] так определяются этапы объектно-ориентированного подхода к разработке ПО: Объектно-ориентированный анализ (analysis) - способ анализа, изучающий...
-
Зависимость - Объектно-ориентированный подход и диаграммы классов в UML
В некоторых случаях два и более элемента модели могут быть семантически связаны. Например, класс A использует методы класса B. Тогда при изменении класса...
-
Каждая диаграмма состояний в UML описывает все возможные состояния одного экземпляра определенного класса и возможные последовательности его переходов из...
-
Заключение - Объектно-ориентированный подход и диаграммы классов в UML
В заключение скажем несколько слов о применении модели классов UML. Особое место этой модели среди других моделей UML определяется тем, что основная цель...
-
Наследование - Объектно-ориентированный подход и диаграммы классов в UML
Наследование - это отношение типа общее-частное между элементами модели. Наследование пакетов означает, что в пакете-наследнике все сущности...
-
Введение - Объектно-ориентированный подход и диаграммы классов в UML
Психологи уже давно показали, что средний человек может одновременно воспринимать адекватно в пределах десятка единиц информации. Таким образом, при...
-
Диаграмма классов, Разработка пользовательского интерфейса - Основы технологии программирования
На основе построенных диаграмм взаимодействия и переходов состояний можно построить диаграмму классов информационной системы. Рис. 5 Диаграмма классов...
-
Наглядно модель данных целесообразно представить себе в виде двух взаимосвязанных фазовых (т. е. абстрактных) пространств, в первом из которых осями...
-
Объектно - ориентированное программирование - Модульное и объектно-ориентированное программирование
Объектно-ориентированное программирование является в настоящее время наиболее популярной технологией программирования. Объектно-ориентированными языками...
-
- рисуем графический примитив, например, эллипс у рыбки; - накладываем сверху на эллипс другой графический объект так, чтобы он закрывал часть эллипса; -...
-
Построение ER диаграмм - Модернизация структуры базы данных на основе анализа требований предприятия
При построении моделей информационных систем важнейшей методикой является ER-моделирование или построение диаграмм сущность-связь. Сущность представляет...
-
Системный подход к анализу информационной сферы предприятия Сущность системного подхода может быть определена путем обобщения его свойств и...
-
ER - диаграмма базы данных была представлена на рис. 2. Рис.2. ER-диаграмма базы данных. Таблица admin - содержит два столбца login и password которые...
-
Описание деятельности ИТ-отдела компании в рамках разработки ключевых показателей эффективности является одной из важнейших частей процесса. Однако...
-
ДИНАМИЧЕСКИЕ СТРУКТУРЫ ОБЪЕКТОВ - Программирование, ориентированное на объекты
Связанная организация памяти. - Ассоциативные структуры. - Списки. - Очереди. - Рекурсивные структуры. - Наборы. - Деревья. Связанная организация памяти...
-
Все параметры политик располагаются в объекте групповых политик GPO (Group Policy Object). Объекты групповых политик делятся на две категории: * Доменные...
-
В основном для многих вычислительных систем топологическое проектирование производится с помощью нейросетевых алгоритмов так, чтобы минимизировать...
-
Защита от копирования - Инженерно-техническая защита объектов
Средства защиты от копирования предотвращают использование ворованных копий программного обеспечения и являются в настоящее время единственно надежным...
-
Информационные объекты и их связи - Система управления базами данных
Понятие информационного объекта Информационный объект - описание некоторой сущности (реального объекта, явления, события) в виде совокупности логически...
-
Объектно-ориентированные языки - Инструментальные средства разработки экспертных систем
В главе 12 мы уже обращали ваше внимание на то, что формат правил хорошо согласуется с представлением знаний в форме "при выполнении условий СЬ ..., С"...
-
Программные средства защиты - Инженерно-техническая защита объектов
Системы защиты компьютера от чужого вторжения весьма разнообразны и классифицируются, как: Средства собственной защиты, предусмотренные общим программным...
-
Объекты управления и их свойства - Visual Basic. Основы программирования
Объектом называется некая сущность, которая, во-первых, четко проявляет свое поведение, а во-вторых, является представителем некоторого класса подобных...
-
Цель Работы - изучить приемы создания и использования шаблонов классов. - Теоретические сведения Достаточно часто встречаются классы, объекты которых...
-
Цель Работы - изучить одну из базовых концепций ООП, наследование классов в С++, заключающуюся в построении цепочек классов, связанных иерархически,...
-
Комплексный подход к обеспечению информационной безопасности, Основные понятия - Защита информации
Основные понятия Под информацией, применительно к задаче ее защиты понимается сведения о лицах, предметах, фактах, событиях явлениях и процессах...
-
Описание состава автоматизируемых бизнес-процессов Бизнес-процессы компании, подлежащие автоматизации, приведены в следующей таблице: Название...
-
Информационный безопасность автоматизированный угроза Классификация угроз информационной безопасности Анализ актуальных угроз конфиденциальной...
-
Все рассмотренные ранее диаграммы отражали концептуальные аспекты построения модели системы и относились к логическому уровню представления. Особенность...
-
Краткие сведения об объектах автоматизации Объектом автоматизации является деятельность работы начальника ДЧ ЛОП. Режим работы начальника ДЧ ЛОП пять...
-
Резервное копирование и восстановление информации - Эксплуатация объектов сетевой инфраструктуры
Резервное копирование - это процесс создания когерентной (непротиворечивой) копии данных. Резервное копирование становится все более важным на фоне...
-
Система водоснабжения как объект автоматизации Многочисленные потребители требуют воду: как различного качества, так и разное его количество. Количество...
-
Полиалфавитные шифры: суть подхода к шифрованию - Полиалфавитные шифры
Вводить понятие полиалфавитного шифра удобнее всего, сначала определив моноалфавитный шифр, что было сделано в исторических сведениях. Суть...
-
Image-based Content Creation В работе Lalonde Lalonde J. F. et al. Photo clip art //ACM Transactions on Graphics (TOG). - ACM, 2007. - Т. 26. - №. 3. -...
-
Теоретические предпосылки исследования Системы поддержки принятия решений Системы поддержки принятия решений (СППР), представляют собой приложения узкого...
Утилиты, Объект - Объектно-ориентированный подход и диаграммы классов в UML