正确实现MVC架构

Ran*_*ent 5 model-view-controller

我读了很多关于MVC架构的文章,但我仍然感到困惑.

  • 哪个图表是正确的?
  • 甚至存在正确的MVC架构实现?
  • 我可以使用不同的MVC架构实现吗?

图1

图1 http://img219.imageshack.us/img219/4576/screenshot20100418at213.png

图2

图2 http://img38.imageshack.us/img38/4576/screenshot20100418at213.png

图3

图3 http://img526.imageshack.us/img526/3900/screenshot20100418at214.png

mko*_*ela 8

通过思考责任可以理解MVC:

不允许View直接更改模型的状态 - 仅通过Controller.该视图仍然可以直接访问模型,但仅用于查看(或通过拥有非官方模型的副本).

模型应该存在于自己的Universe中,而不是对控制器或视图的任何引用.

Controller控制状态和对Model的访问.