基于MVC模式下开发框架建设及改进.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于MVC模式下开发框架建设及改进

基于MVC模式下开发框架建设及改进   摘 要:计算机网络迅速发展,Web成为人们日常生活中一个重要平台,在网站上人们除了可以获得诸多最新资讯,还可以在线购物、投资理财以及档案管理等;企业也对Web系统更加依赖,因而web系统的开发备受人们关注,而PHP在Web开发中占据着重要地位。目前,传统的php开发模式把数据层代码、HTML表示层代码混合,无法适应系统开发的需求。本文结合信融天下互联网金融P2P网贷系统和湛江电大学生干部数字化档案系统的实现,对基于MVC设计模式的PHP实现―THINKPHP框架建设和改进,可以为PHP的开发提供了一个Web的应用程序框架,从开发框架上将Web应用程序进行分离,即表示层、业务逻辑层和数据访问层代码完全分开,并且可以在框架上为数据访问设置模型,提高了Web应用程序开发效率,使其可靠性、可扩展性、可维护性等特点得到增强。关键词:MVC设计模式;PHP;开发框架 0 引言 随着互联网迅猛发展,使得动态网站建设要求更高,在网站开发方式上传统的模式已经无法满足人们的需要,MVC模式对这个问题进行来了很好的解决[1]。MVC作为一种开发模式在解决大型Web项目问题上发挥了重要作用。PHP是一种专业的网站的开发语言,然而现有的PHP开发模式尚未有成熟、统一的规范,系统水平的高低取决于开发人员的专业素质及经验等,已经无法满足人们在开发效率、可扩展性、可靠性及可维护性等方面快速房展的需求[2]。因而把框架机制引入PHP的开发成为人们关注的重点 1 MVC设计模式 1.1 MVC设计模式在Web中的应用 MVC(Model-View-Controller)把数据处理、数据表示及程序输入输出控制进行分离,对不同部分对象间的通信方式进行了描述,使其不受其它数据模型及其方法的影响,从而让程序结构更加清晰并具有灵活性[3]。MVC把应用程序的输入、输出、处理强行分离,MVC的应用程序分为模型、控制器及视图三个部件[4]。MVC组件的功能及关系如图1所示 Web应用程序从传统意义上来说一般都是由ASP/PHP进行创建的。它们把数据层代码、HTML表示层代码混合,即便开发者经验丰富、水平较高,从表示层把数据分离也具有一定的困难[5]。MVC把它们从根本上进行了强制分离,虽然MVC的构造工作量变大,但仍就有诸多优点。其一,具有低耦合性。视图层、业务层分离,视图层代码更改不需要对模型、控制器代码进行修改。同样,改变业务流程或者规则只要对MVC的模型改动就可以,不需要更改视图层代码。模型和控制器、视图是分离的,因而应用程序的数据层及业务规则改变十分容易。其二,具有高重用性、可适用性。科学技术水平不断提高,访问应用程序的方式变得多种多样。同样一个服务器端的代码MVC模式可以让多种视图进行访问如Web浏览器等。模式只能够对数据未格式化的部分进行返回,因而为不同界面的使用提供了便利。其三,具有快速开发的能力,MVC模式可以让界面设计人员对表现形式更加关注,程序员对开发业务逻辑更加重视,使系统的前端、后端同时开发,使系统开发时间大为缩短。其四,具有可维护性。视图层、业务逻辑层进行分离,使得它们之间联系只能通过接口,任何部分内部都不会对其他部分产生影响,从而使Web应用具有可维护性。其五,为软件工程化管理提供了便利。不同层可各司其职,一个层面的应用不同但也有某些相同特征,为软件工程化管理提供了便利 1.2 MVC设计模式的PHP实现 PHP对象在服务器端不能跨页面存在,所有PHP实际上是没有办法实现传统的MVC架构的,其问题主要在模型上得到体现,如在Java中,数据模型是独立的,不同于业务逻辑、表现逻辑等,它可以在服务器端跨页面存在,JavaBean 就是在这个方面发挥作用[6]。PHP进程在内存中不能长期存在,只能在PHP页面刚刚执行时创建,页面执行结束,则该进程已经结束,基于这种情况,模型不能进行直接实现 因PHP语言跨页面无法存在,PHP开发框架中使用被动MVC更为适合。在被动MVC模式上,模型身处MVC结构下却不知。也就是说模型是一个普通的?ο螅?和MVC中的其他部分是没有关联的。这样的话,模型就不用再跨页面存在,改变了使用MVC导致的效率低下现象 被动MVC模式和传统意义上的主动MVC模式不同,模型是一个简单的独立的对象,因而自身的改变不能传达给视图;视图也无法对模型的更新作出订阅及监视等。视图只能够对控制器传送的数据进行使用或者在得到控制器通知之后再去模型进行最新数据的提取。所以被动MVC模式下,控制器还要把模型更新之后的数据传送给视图,因而在设计上相较于主动MVC更加困难 2 基于MVC设计模式的开发框架建设与改进 2.1 框架入口设计 传统的Web应用程序

文档评论(0)

linsspace + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档