Представление компонентов Swing на диаграммах классов UML

У меня есть несколько вопросов относительно представления объектов графического интерфейса в диаграммах классов uml.

Например, если у меня есть класс, который расширяет JFrame, то я создам диаграмму классов UML с символом наследования, но в JFrame мне не нужно записывать все его переменные и методы класса, а только те, чьи класс будет использовать право??

Во-вторых, как я буду представлять, что мой класс будет использовать определенный менеджер компоновки? С символом ассоциации я сомневаюсь, но не уверен.


Скажем, например, у меня есть пакет с именем gr.mydomain.exampleproject, и у меня есть класс, расширяющий JFrame.

Правилен ли следующий подход или мне нужно поместить JFrame в отдельный пакет (javax.swing)?

введите здесь описание изображения


person user969245    schedule 07.05.2012    source источник


Ответы (1)


Да, вы должны нарисовать символ наследования для класса JFrame, но оставьте класс JFrame пустым, не помещайте в него какие-либо поля или методы. Все знают или могут посмотреть в API, что содержит JFrame. Кроме того, вы бы заполнили пространство множеством методов, присутствующих в JFrame.

Сделай это так:

UML скриншот

Что касается менеджеров компоновки: я считаю, что отношения зависимости являются правильными в этой ситуации. Отношение ассоциации было бы правильным, если бы вы вызывали методы в классе менеджера компоновки. Но вы, вероятно, просто делаете что-то вроде frame.setLayout (new LayoutManagerClass ()); (то есть просто создаете объект). В данном случае это отношения зависимости.

person Radu Murzea    schedule 07.05.2012
comment
Могу я спросить вас, какой инструмент вы использовали для создания этой диаграммы классов? - person mhmpl; 07.05.2012