我将尝试以技术中立的格式解释它:
mvc 是模型、视图、控制器的缩写。
=============================================
模特不是走下楼梯炫耀时髦衣服的女孩/男孩。
但它是一个包含有价值的属性(数据)的对象
例如:
在 RPG(角色扮演游戏)中,每个角色都有统计数据,例如
生命值、魔法、攻击、防御、闪避、准确性等。
这些统计数据在类中称为属性。
Character 充当包含所有这些属性的类。
=============================================
现在,谈论视图,
视图是显示特定模型的东西。
例如:
我们有一个显示总生命值和当前生命值的生命值条。
有些人可能有兴趣看到代表健康的心形
而不是红条。
开发人员开始创建另一个不同的视图,但仍使用相同的模型。这是在谈论可重用性!
您正在重用同一个模型以多种方式显示其属性!
=============================================
对于控制器,它是定义业务逻辑的地方。
业务逻辑(或也称为编码的“有趣”部分)
是您定义一些代码来操作属性的地方
模型并将它们发送到视图。
例如:
所以让我们假设英雄有完整的生命值,
敌人攻击他...
控制器(有权访问模型)操纵您的
角色生命值通过受到的总伤害减去当前生命值
来自敌人的攻击。
当你的角色喝下健康药水时,
控制器会增加你的角色当前的生命值。
===========================================
对于交流部分,
操纵模型的控制器,
可以告知视图所做的更改,
以便视图将显示您角色的最新更改。
或者
只要属性发生变化,模型就会调度事件,
以及当前订阅模型的视图,
然后将采取必要的措施来使用当前的视图更新视图
被操纵的财产。
你也可以看看这个link