Недавно я изучал UML и рисовал простые диаграммы с обычными простыми стрелками между классами, но я знаю, что этого недостаточно. Есть много других стрелок: обобщения, реализации и т. Д., Которые имеют значение для читателя диаграмм.
Есть ли хороший ресурс, который мог бы объяснить каждую стрелу (обычную, простую, пунктирную, бриллиантовую, бриллиантовую)?
Было бы лучше, если бы у него было несколько примеров кода для них.
Ответы:
Вот некоторые пояснения из документации по Visual Studio 2015:
Диаграммы классов UML: Ссылка : https://msdn.microsoft.com/library/dd409437%28VS.140%29.aspx
Диаграммы классов UML: Рекомендации : http://msdn.microsoft.com/library/dd409416%28VS.140%29.aspx
Дайте мне знать, если у вас есть еще вопросы.
источник
Я думаю, что эти картины понятны.
источник
Хорошая шпаргалка (http://loufranco.com/wp-content/uploads/2012/11/cheatsheet.pdf) :
Это покрывает:
И предоставляет несколько образцов.
источник
Мой любимый "шпаргалка" UML - UML Distilled Мартина Фаулера. Это единственная из его книг, которую я прочитал, которую я рекомендую.
источник
Вот упрощенный учебник:
Практический UML
Для большего я рекомендую получить немного литературы.
источник
Краткий справочник Аллена Холуба по UML превосходен:
http://www.holub.com/goodies/uml/
(Есть довольно много конкретных примеров стрелок и указателей в первом столбце таблицы, с описаниями во втором столбце.)
источник
Очень простое для понимания описание - это документация на yuml с примерами для диаграмм классов, вариантов использования и действий.
источник
Принятый ответ, как говорится, отсутствует некоторые объяснения. Например, в чем разница между однонаправленной и двунаправленной ассоциацией? В указанном примере, как сделать существуют. (Оба «5» в стрелках)
Если вы ищете более полный ответ и больше времени, вот подробное объяснение.
источник
Если вы более склонны к MOOC, один бесплатный курс, который я бы порекомендовал, который научит вас всем плюсам и минусам большинства диаграмм UML, - это один из Udacity: https://www.udacity.com/course/software-architecture -дизайн - ud821
источник
Агрегации и композиции немного сбивают с толку. Тем не менее, думаю, что композиции являются более сильной версией агрегации. Что это значит? Давайте рассмотрим пример: (Агрегация) 1. Возьмите классную комнату и учеников. В этом случае мы попытаемся проанализировать отношения между ними. Классная комната имеет в отношения со студентами. Это означает, что класс состоит из одного или нескольких учеников. Даже если мы удалим класс Classroom, класс учеников не нужно уничтожать, что означает, что мы можем использовать класс Student независимо.
(Композиция) 2. Взгляните на страницы и Книжный класс. В этом случае страницы - это книга, что означает, что наборы страниц составляют книгу. Если мы удалим класс книги, весь класс Page будет уничтожен. Это означает, что мы не можем использовать класс страницы независимо.
Если вам все еще неясно по этой теме, посмотрите это короткое замечательное видео, которое объясняет агрегацию более четко.
https://www.youtube.com/watch?v=d5ecYmyFZW0
источник