论mvc补充之mmvc

在网站设计中mvc是最流行的,但是在具体操作的时候,这个结构却是见仁见智的,v的划分是很清晰的,c和m的权限划分,却不是这么明确,从整个设计结构上来说,model是用来控制数据的,在最初的操作中,我是把model用来操作表,每个model class用来控制一个表,controller就像胶水一样,用来处理来自页面的接口,json的,xml的,页面的,ajax的,每个controller 对一个页面负责,不同页面之间的复用部分,放在lib里面,不同的controller里面调用library 来实现代码复用,好处是减少了层级,mvc三个级别+一个lib附属级别。

但是遇到的问题是 lib 和 controller的职能划分问题,很多时候是写一段代码的时候,首先放在controller里面,然后发现其他的页面也需要这个功能,就把这段代码复制到了library里面,然后两处调用这个,这个还算好的,如果开发者不是同一个人的话,就会遇到两个人实现了相同的逻辑,然后谁也没有放到lib里面,或者是放在lib里面之后,放在什么地方的问题,重新命名一个文件,还是添加在某个类里面,这些都是值得思考和商榷的问题,约定里面模糊的地方。

最新接触了一种新的理想,可以称之为mmvc,剥离了之前的lib附属级别,框架里面提供的工具lib保留,这个在使用框架的时候应该都清楚这些类的存在的,在自己添加的代码里面不再增加这些类,在mvc三层的基础上增加model类,编程modeldb + model + controller + view 四层级别,mdoeldb和我之前定义的每个model  class 控制操作一个表一样,controller被削弱,只是负责接收从页面外部发起的请求数据,然后检验这些数据,调用model 返回数据,

modeldb ,controller之间不能存在互叼,model之间可以,感觉是强制性的把lib的功能划分进入了mvc的层级里面,至于效果,拭目以待

Leave a comment

Your email address will not be published.

*