MVC及PHP++、PHP--胡思乱想杂记
有一定经验的开发者都了解MVC模式,特别是基于WEB而且又是可以使用嵌入HTML语言进行开发的,比如PHP。诚然PHP作为一种嵌入式的脚本语言是强大的,这也是一直以来传统PHP给很多人的认知。以至于在PHP3甚至在PHP4时代接触过并最终放弃了PHP的人,都停留在这个认识上,认为PHP没有什么长处,太过简陋。其实不然,从技术角度来讲,一门语言的语法不能决定一个应用的好坏,很多情况下,语言仅仅是实现工具,几乎所有大中型应该都不太会单一的采用一门语言来开发,各种语言都有其自身的长处。 长期以来PHP被杂糅进太多的东西了,要负责Db、又要负责HTML、还要负责Controller、还要负责Model,等等,成了PHP++了。发展到今天,PHP早就脱离了嵌入HTML脚本语言的范畴。应该有更重要的事情给PHP做。当然嵌入HTML当脚本使唤,仍然是强项,但不应该杂糅了。在此换个角度来看PHP。把PHP按角色来理清一下,顺便来发明几个新名词。与数据库层面打交道的叫PHP-Db,与流程控制相关的叫PHP-Controler,与HTML等终端呈现打交道的叫PHP-Client,等等。这样认识可能会更清晰点。
MVC及PHP++、PHP--胡思乱想杂记
这几天闲来无事,朝思暮想,对MVC的理解有了新的认识,有一点点浅见,于是折腾了一张图。 至于什么是Model我也理解一下,理解的不对的话,请各位多踹几脚。Model在很多人心里长期以来被Db给占了。而在Controller中写了大量应该Model去完成的内容。广义上说其实Model并不仅仅是Db。比如我们用的FCKeditor我们可以说是一个Model,它用来创建一个可视编辑器。大方面的Model估计都能重视。再说一个小的,比如一个用户系统中的“用户新增(UserAdd)”这个功能,用户端可能是用户注册,管理端可以是直接创建一个用户。如果在控制器里直接写,用户端和管理端那就重复写代码了。这样的功能就应该放到Model里,拿来调用。这个就叫Model,类似函数,也叫业务逻辑。控制器控制的只是业务流程。如果控制器掺和模型的事,凡事诸葛亮,会弄得拥肿无比,非常繁琐,会被累死。
|
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |