logo search
ГОСЫ / ГОСБилеты

1. Инкапсуляция, наследование, полиморфизм. Классы, объекты и отношения между ними. Диаграммы логического уровня.

В разделах указывается имя класса, его атрибуты (поля) и операции (методы). Таким образом, класс объединяет данные, представленные атрибутами и алгоритмы по их обработке. И то и другое скрыто от внешних пользователей – других объектов. Сокрытие данных и методов в качестве собственных ресурсов класса получило название инкапсуляции (in capsule).

Переопределение методов реализует идею полиморфизма, позволяющую изменять поведение метода от родителя к потомку

Потомки наследуют характеристики родительских классов и добавляют свои структуры данных и методы их обработки

Диаграммы физического уровня предназначены для описания физической организации системы. К ним относятся диаграмма реализации и развертывания.

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

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

Поведенческие диаграммы разделяют в соответствии с основными способами моделирования динамики системы:

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

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

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

Отношение обобщения связывает более общий элемент (родительский класс) с более частным (дочерний класс или подкласс) элементом(прям с незакр треуг)

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

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

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

Отношение зависимости является наиболее общей формой отношения, которое используется, когда изменение одного элемента модели может потребовать изменения другого зависимого от него элемента(пунктир со стрелкой)

Отношением реализации является отношением между двумя элементами, при котором один из них описывает некоторый сервис, а другой гарантирует его выполнение. Чаще всего реализация используется для определения отношений между интерфейсами и классами (или компонентами).(пунктир с незакр треуг)

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