开发者

A general question on model-view-presenter (C#), should the model know the presenter?

开发者 https://www.devze.com 2023-01-18 09:26 出处:网络
I have a MVP (passive view) setup, and it is going quite well. I recently read Martin Fowlers description of this (http://martinfowler.com/eaaDev/PassiveScreen.html) and he writes \"Another advantage

I have a MVP (passive view) setup, and it is going quite well. I recently read Martin Fowlers description of this (http://martinfowler.com/eaaDev/PassiveScreen.html) and he writes "Another advantage that Passive View is a very explicit mechanism. There's very little reliance on Observer mechanisms or declarative mappings."

In my MVP I have my model completely oblivious of a presenter, and communication from the model to the presenter is handled by events. I initialize my MVP in the view by开发者_运维百科 calling the presenter ctor e.g. new Presenter(this, new Model()) (where this refers to the view).

My question is, should I make the model aware of a presenter such that it can invoke presenter logic directly instead of using events?


No, you shouldn't. If you did, your model would be tightly coupled with your presentation layer, making it useless outside of that context. Moreover, testing, debugging and maintaining your model layer would become more problematic.

0

精彩评论

暂无评论...
验证码 换一张
取 消