2014-12-08 1 views
1

Я только начал изучать UML, и мне было интересно, может ли класс быть объединен в один путь и скомпоновать другой способ (если вы поймете, что я имею в виду). Давайте сделаем пример:UML Можно ли использовать агрегирование и композицию с двумя классами?

My example

Maingui.java:

private controller; 

public Maingui() { 
    controller = new Controller(this); 
} 

Controller.java

private maingui; 

public Controller(Maingui gui) { 
    maingui = gui; 
    doSomethingWithMainGui(); 
} 

private void doSomethingWithMainGui() { 
    maingui.doSomeThing(); 
} 

это правильный способ показать ассоциацию?

ответ

0

Это правильный способ показать ассоциацию, но это пример плохой архитектуры приложения. Одним из принципов хорошей архитектуры стиля является свободное соединение. Вы можете прочитать здесь об этом: What is the difference between loose coupling and tight coupling in the object oriented paradigm?

+1

Я вижу логическое разъединение здесь, но потом я упал на голову в детстве. Как два объекта могут быть объединены друг в друга, не говоря уже о друг другом? – BobRodes

Смежные вопросы