Como construir dois objetos, um com o outro como um parâmetro / membro

Eu tenho duas classes que cada uma precisa de uma instância uma da outra para funcionar. Normalmente, se um objeto precisa de outro objeto para executar, eu gosto de passá-lo no construtor. Mas não posso fazer isso neste caso, porque um objeto precisa ser instanciado antes do outro e, portanto, o segundo objeto não existe para ser passado ao construtor do primeiro objeto.

Eu posso resolver isso passando o primeiro objeto para o construtor do segundo objeto e, em seguida, chamando um setter no primeiro objeto para passar o segundo objeto para ele, mas isso parece um pouco desajeitado, e estou me perguntando se há uma maneira melhor:

backend = new Backend();
panel = new Panel(backend);
backend.setPanel();

Eu nunca coloquei nenhum estudo no MVC; Suponho que estou lidando com um modelo aqui (o back-end) e uma visualização ou um controlador (o painel). Quaisquer idéias aqui que eu possa obter do MVC?

questionAnswers(6)

yourAnswerToTheQuestion