用户
 找回密码
 入住 CI 中国社区
搜索
12
返回列表 发新帖
楼主: xiaoniao
收起左侧

[讨论/交流] 结合codeigniter来讨论下mvc的缺点

[复制链接]
发表于 2009-9-25 17:09:19 | 显示全部楼层
比起Ruby On Rails和CakePHP来,我觉得CI已经很“自由”了,至少没有那么多的规范。
发表于 2009-10-2 09:41:33 | 显示全部楼层
第二视图与控制器间的连接过于紧密
  视图与控制器是分离,又是紧密相连的组件。这种关系就妨碍了单个组件的可重用性。想想看在codeigniter中写的视图层,大多是针对 controller层来写。如果如果换了controller,你写的那个视图还可以很方便的重复利用吗?有的人说可以。当然你又得去改写匹配新的控制器的视图了。因为除了那些只读的视图(即不参与数据交互的那些视图),视图离开控制器,它的使用就很有限
第三。数据访问的低效率
  这里我想大家很容易想像出来,还是结合codeigniter,我们现在写好了一个view,现在这个view需要再调用其他新的数据。这时它又必须依赖与model层的操作接口,再转向controller这样多次调用才能得到你想要的数据。试想如果系统的更新非常频繁,对于一些为改变数据的不必要的重复请求,将恶化系统的功能。这里提高一个改进的方法,就是在视图层设置数据缓冲。

-------->个人觉得是楼主对MVC的理解不是很正确,VIEW依赖controller多次调用mode去做事情这个逻辑不是很正确。

流程控制逻辑和数据在controller里面实现,准备好所有数据,给view show,view只负责结合controller送来的数据show的事情

这样子就不存在2,3的问题了
发表于 2012-2-23 09:36:51 | 显示全部楼层
高手们,都研究这个层次了,小弟佩服啊!!!!!不过ci是个轻量级的框架,适合快速开发。总之挺好的,已经能够满足您的大部分需求了{:soso_e102:}

本版积分规则