04. Диаграмма классов: точки зрения, ассоциации. Роли, множественность и ассоциации.
Три различные точки зрения на построение диаграмм классов:
1. Концептуальная точка зрения.
Если рассматривать диаграммы классов с концептуальной точки зрения, то они служат для представления понятий изучаемой предметной области. Эти понятия, естественно, будут соответствовать реализующим их классам, однако такое прямое соответствие зачастую отсутствует. В действительности, концептуальная модель может иметь весьма слабое отношение или вообще не иметь никакого отношения к реализующему ее программному обеспечению, поэтому ее можно рассматривать независимо от языка программирования.
2. Точка зрения спецификации.
В этом случае мы переходим к рассмотрению программной системы, при этом рассматриваем только ее интерфейсы, но не реализацию. Объектно-ориентированная разработка подчеркивает существенное различие между интерфейсом и реализацией, но на практике оно часто игнорируется, поскольку нотация класса в объектно-ориентированных языках программирования объединяет в себе как интерфейс, так и реализацию.
3. Точка зрения реализации.
С этой точки зрения мы действительно имеем дело с классами, опустившись на уровень реализации.
Ассоциации представляют собой отношения между экземплярами классов (сотрудник работает в компании, компания имеет несколько офисов). С точки зрения спецификации ассоциации представляют собой ответственности классов. Каждая из ассоциаций имеет два конца ассоциации. При этом каждый из концов ассоциации присоединяется к одному из классов этой ассоциации.
Роль – конец ассоциации.
Имя роли – метка конца ассоциации.
Конец ассоциации также обладает кратностью, которая показывает, сколько объектов может участвовать в данном отношении. В общем случае кратность указывает нижнюю и верхнюю границы количества объектов, которые могут участвовать в отношении («1», «*» и «0..1» (либо ноль, либо единица)).
Направление навигации указывается стрелками ассоциаций. Если навигация указана только в одном направлении, то такая ассоциация называется однонаправленной ассоциацией. У двунаправленной ассоциации навигация указывается в обоих направлениях.

Leave a Reply
You must be logged in to post a comment.