I
Isaac Abraham
Hiya
A quick question. I'm using the MVP design pattern to write a Windows Forms
application. I understand the principle behind it and can write a presenter
that controls an associated view. The View creates the Presenter and passes
itself in to the constructor of the Presenter.
However, when I want to launch a child form as a result of e.g. a button
click - who does the responsibility lie with? It can't lie with the
Presenter because the Presenter shouldn't be closely coupled with any
particular UI implementation - and to enforce this, my Presenters are in a
separate assembly to the UI one. The UI references the Presentation assembly
and you can't reference the other way as well because of circular
dependency.
It could lie with the Form but then you start putting business logic in your
UI tier rather than your presentation tier, which I don't want to do.
Should there be a third, controlling entity which orchestrates transitions
from one screen to another?
I've Googled for this a bit and other people seem to be having the same
question - any suggestions gratefully received.
Cheers
Isaac
A quick question. I'm using the MVP design pattern to write a Windows Forms
application. I understand the principle behind it and can write a presenter
that controls an associated view. The View creates the Presenter and passes
itself in to the constructor of the Presenter.
However, when I want to launch a child form as a result of e.g. a button
click - who does the responsibility lie with? It can't lie with the
Presenter because the Presenter shouldn't be closely coupled with any
particular UI implementation - and to enforce this, my Presenters are in a
separate assembly to the UI one. The UI references the Presentation assembly
and you can't reference the other way as well because of circular
dependency.
It could lie with the Form but then you start putting business logic in your
UI tier rather than your presentation tier, which I don't want to do.
Should there be a third, controlling entity which orchestrates transitions
from one screen to another?
I've Googled for this a bit and other people seem to be having the same
question - any suggestions gratefully received.
Cheers
Isaac