2.MVC机制的实现
2.1概述
上一章介绍了MVC的一般概念,这一章将要讲述MVC机制在项目中的具体实现。
2.1.1应用的技术
MVC在某个特定应用上的实现是与该应用的具体技术密切相关的。在网站开发方面,JAVA是比较成熟和典型的,以一个EJB的项目为例,大部分的系统可能采用HTML技术,和J2EE(Java2,Enterprise Edition)的相关技术,包括:HTML,JSP,JavaBean,EnterpriseJavaBean,Servlet。这些技术分布于model,view,controller三个模块之中:view部分用到HTML、JSP和JavaBean技术;controller部分用到Servlet、StatelessSession Bean 、JavaBean 技术;model部分可能用到EntityBean、Stateless Session Bean、JavaBean技术。
但是,我们在这个项目用的是PHP技术来实现,因此,我们需要作出一些折衷。一方面,要尽量使程序的逻辑实现能够平滑地迁移到另一种技术实现(如J2EE),但同时,我们也要考虑到PHP这种脚本语言的局限性。PHP在对于面向对象的支持上同JAVA这种OO的语言不是同一档次,甚至比PERL都要差得很多。不过,幸运的是,我们的运气还不算太坏,因为PHP里面的PEAR是一个面向对象的扩展。使用PEAR的规范,我们一方面可以使用现有的一些PEAR模块,另一方面,可以使我们的程序是能够按照OO的思想来实现业务逻辑的。因此,我们将废弃过去那种模块化,过程化的编程方式,转变思路,将所有的东西都用类包装起来。
在开始介绍实际的设计之前,我们不妨看看这个项目的需求情况