mvx 模式设计

我的理解:
mvc:
view:展示和观察model。
model :数据和数据逻辑,建立观察者模式。
control:业务逻辑和用户事件

view和model太紧了,model建立观察者模式。随着复杂度的变化,大家倾向让model稳定,简洁。

mvp:
view:展示和观察model。并实现接口,供p使用。
p:业务逻辑和用户事件,观察model的变化并且告诉view,一般是和view的接口交互。
model :数据和数据逻辑

p任务过重,model稳定了,简洁了,但程序员主要的工作居然是对控件的各种属性和事件的操作。

mvvm.
p换成vm,程序员不要再用大量时间用在控件的各种属性和事件的操作。各个开发平台,自己设计出databing技术给程序员使用。
这样,程序员的代码少了很多。居然只需要写逻辑了。当然需要很好的databing和observer组件的支持。否则还是回到mvp把。


其实这3个模式,一般都做不到标准。
1.mvc ,没有多少项目真正的做到了model建立观察者模式。只是分层而已。
2.mvp,又有多少项目就是分层呢。没有做到view包含接口。
3.mvvm ,这个就没法做歪了。因为如果提供了dbing和observer,你的项目就没办法变形。
大部分项目,随便哪个模型,做到了标准的话。对于开发和后期维护都不是非常困难。
那些所谓的模型缺点,根本不是缺点,最大的缺点是,我们的开发根本不属于任何一个模型才是最大缺点。

三层构架非常好,简单有效。
但它既不是mvc。model并没有建立观者者。
也不是mvp,p会操作接口,而不是直接操作view。这样利于单元测试。
更不是mvvc.
三层,是没有任何构架的,只吸收了mvp的隔离思想的一种布局。对于绝大部分项目。都是简单有效快速。
因为隔离思想本身就是简洁,但有效。至于单元测试,更清晰的逻辑。那么就不是隔离思想能做到的。

posted @ 2019-09-26 14:32  琴鸟  阅读(513)  评论(0编辑  收藏  举报