Расширение предметной модели заказа
Продолжим диаграмму классов из предыдущего урока. Опишем данные позиции заказа и товара, а затем соединим эти понятия направленной ассоциацией.
Исходная модель
Откройте диаграмму Предметная модель заказа. Класс Заказ уже содержит
атрибуты и метод, а композиция показывает, что заказ владеет одной или
несколькими позициями.
Данные позиции заказа
Выберите класс Позиция заказа. В панели свойств откройте редактор
Атрибуты класса.
Создайте два атрибута:
количество— количество единиц товара, типInteger;цена— цена единицы товара в заказе, типDecimal.
После нажатия Применить оба атрибута появятся внутри класса на диаграмме.
Данные товара
Выберите класс Товар и добавьте ему ещё два атрибута:
идентификаторТовара— уникальный идентификатор, типString;наименование— наименование товара в каталоге, типString.
Примените изменения и убедитесь, что оба значения отображаются внутри класса.
Связь позиции с товаром
Нажмите Новый: Связь. В качестве источника выберите Позиция заказа, а в
качестве цели — Товар. Задайте наименование Относится к товару и добавьте
короткое описание отношения.
После сохранения выберите связь на диаграмме. Укажите тип Ассоциация,
кратность 0..* у источника и 1 у цели. Один товар может встречаться во
множестве позиций заказов, а каждая позиция относится ровно к одному товару.
Результат
Снимите выделение, чтобы проверить модель целиком. Теперь она описывает заказ, его состав и товар каталога, на который ссылается каждая позиция.
Таймкоды
00:00- цель урока;00:06- выбор позиции заказа;00:08- атрибуты позиции;00:25- применение изменений;00:31- выбор товара;00:33- атрибуты товара;00:52- применение изменений;00:58- создание связи;01:02- выбор источника;01:05- выбор цели;01:11- сохра нение связи;01:17- тип отношения;01:24- кратность позиции;01:31- кратность товара;01:40- итоговая модель.
Предыдущий урок: Атрибуты, методы и отношения классов.
Следующий урок: Базовый жизненный цикл заказа.