Слайд 2
Изображение класса
Класс на диаграмме изображается в виде прямоугольника, разделенного
горизонтальными линиями на три части.
В первой части указывается
название класса.
Вторая часть содержит перечень атрибутов класса, которые характеризуют тот или иной объект этого класса в модели предметной области.
Третья часть содержит перечень операций, отражающих его поведение в модели предметной области
Слайд 3
Модификаторы видимости
В программировании инкапсуляция обеспечивается с помощью модификаторов
видимости
Модификаторы видимости ограничивают доступ к атрибутам
Модификаторами доступа обозначаются специальными символами
слева от их имен:
Слайд 4
Интерфейс
Интерфейс - это логическая группа открытых ( public) операций объекта.
Один и
тот же объект может иметь несколько интерфейсов.
Интерфейс отражает внешние проявления объекта, показывает,
каким образом осуществляется взаимодействие с ним, скрывая остальные детали, не имеющие отношения к процессу взаимодействия.
Интерфейс всегда реализуется некоторым классом, который в таком случае называют классом, поддерживающим интерфейс. Как мы уже говорили ранее, один и тот же объект может иметь несколько интерфейсов. Это означает, что класс этого объекта реализует все операции этих интерфейсов.
Слайд 5
Изображение интерфейсов
Первый способ - Класс со стереотипом , если нужно
показать, какие именно операции предоставляет
интерфейс
Второй способ - В виде кружочка или,
как говорят, «леденца», если перечень операций не важен
Третий способ используется для изображения интерфейсов, требующихся объекту для выполнения его работы
Слайд 6
Почему стоит использовать уже существующие классы:
Во-первых, идя этим
путем, мы пользуемся плодами ранее принятых решений. Действительно, если
когда-то мы уже решили некоторую проблему, зачем начинать все "с нуля", повторяя уже однажды проделанные действия?
Во-вторых, таким образом мы делаем решение мобильным и расширяемым. Используя уже существующие классы и создавая на их основе новые, мы можем развивать решение практически неограниченно, добавляя лишь необходимые нам в данный момент детали - атрибуты и операции.
В-третьих, существующие классы, как правило, хорошо отлажены и показали себя в работе. Разработчику не надо тратить время на кодирование, отладку, тестирование и т. д., - мы работаем с хорошо отлаженным и проверенным временем кодом, который зарекомендовал себя в других проектах и в котором уже выявлено и исправлено большинство ошибок.
Слайд 7
Обобщение
Обобщение - это отношение между более общей сущностью, называемой суперклассом, и
ее конкретным воплощением, называемым подклассом.
При этом все атрибуты и операции суперкласса независимо
от модификаторов видимости входят в состав подкласса.
Обобщение (или, как часто говорят, наследование) на диаграммах обозначается незакрашенной треугольной стрелкой, направленной на суперкласс
Слайд 9
Полиморфизм
Так же как классы-потомки наследуют атрибуты и операции суперкласса, они
могут наследовать и их интерфейсы - то есть объекты
абсолютно разной природы могут иметь один и тот же интерфейс.
Работа механизма полиморфизма основана на совпадении сигнатуры метода, объявленного в интерфейсе, и сигнатуры самого метода.
Методы внутри классов-потомков могут быть переопределены, их реализации будут различными, а сигнатуры останутся неизменными. Таким образом, выполняя одни и те же операции, разные объекты могут вести себя по-разному.
Слайд 10
Отношения между классами
Зависимость возникает тогда, когда реализация класса
одного объекта зависит от спецификации операций класса другого объекта.
И если изменится спецификация операций этого класса, нам неминуемо придется вносить изменения и в зависимый класс.
Слайд 11
Отношения между классами
Ассоциация. Это просто связь между объектами, по которой
можно между ними перемещаться.
Ассоциация может иметь имя, показывающее природу отношений
между объектами, при этом в имени может указываться направление чтения связи при помощи треугольного маркера.
Однонаправленная ассоциация может изображаться стрелкой
Слайд 12
Типы ассоциаций
Ассоциация может объединять три и более класса. В
этом случае она называется n-арной и изображается ромбом на пересечении линий
Слайд 13
Типы ассоциаций
Ассоциации могут подразумевать и более сложное отношение между классами,
например, связь типа "часть-целое". Такой вид ассоциации называется ассоциацией с агрегированием.
В
этом случае один класс имеет более высокий статус (целое) и состоит из низших по статусу классов (частей). При этом выделяют простое и композитное агрегирование и говорят о собственно агрегации и композиции.
Простая агрегация предполагает, что части, отделенные от целого, могут продолжать свое существование независимо от него.
Под композитным же агрегированием понимается ситуация, когда целое владеет своими частями и их время жизни соответствует времени жизни целого, т. е. независимо от целого части существовать не могут.
Слайд 14
Типы ассоциаций
В отношении между двумя классами сама ассоциация тоже может
иметь свойства и, следовательно, тоже может быть представлена в
виде класса.