一种新的网络应用程序开发框架mvc-外文文献翻译--学位论文.doc
《一种新的网络应用程序开发框架mvc-外文文献翻译--学位论文.doc》由会员分享,可在线阅读,更多相关《一种新的网络应用程序开发框架mvc-外文文献翻译--学位论文.doc(21页珍藏版)》请在咨信网上搜索。
1、杭州电子科技大学毕业设计(论文)外文文献翻译毕业设计(论文)题目中小型企业员工工作信息管理系统翻译(1)题目一种新的网络应用程序开发框架MVC翻译(2)题目网站建设技术学 院计算机学院专 业软件工程姓 名 班 级 学 号 指导教师 译文一:一种新的网络应用程序开发框架MVC* Luo Guangchun, the Ph.D. of UEST of China; Wang Yanhua, the Master of the UEST of China; Lu Xianliang, the professor of UEST of China, advisor of Ph.D.; Han Hong
2、, the Ph.D. of UEST Of China摘要 MVC(Model/View/Controller)的设计模式出现在在Smalltalk-80,并在软件的设计中广泛应用。本文介绍一种基于MVC框架的的新网络应用程序。这种框架把实施逻辑与表现形式独立开来。它也提高了系统的可维护性,可扩展性以及使用模块数据库备案、模板数据库,通讯对象和缓冲队列的性能。关键词:MVC、设计模式、网络应用程序1.简介 网络应用系统是一个基于B(rowser)/ S(erver)模型应用系统。它利用多种动态网页开发技术。目前,软件设计的主题之一是网络应用开发模式和工具的。它们直接影响系统的几个关键因素,比
3、如可维护性、可扩展性、稳定性和安全性。本文中,基于MVC1的网络应用程序的设计模式是为解决这两类因素扩展性和可维护性这些不易处理的问题。把MVC设计模式引入网络应用程序开发,执行逻辑可以独立于系统的表现形式。 MVC由三种对象组成。1)模型:是应用对象,2)视图:是它的屏幕的显示,3)控制器:定义用户界面并对输入的信息做出响应。在出现MVC之前,用户界面的设计倾向于把这些东西做在一起。然而,MVC独立了它们,增加系统的灵活性和可重用性。MVC把视图和模型独立开来,在它们之间建立了“subscribe/notify”协议。一个视图必须确保其正确反映模型的状态。每当模型的数据发生改变,视图会得到相
4、应的通知。作为回应,每个视图都会有更新自身的机会。这个方法可以让你附上一个模型的多个视图以便提供不同的报告。你也可以不改变原模型同时创建新的视图。2.背景和存在的问题 虽然MVC的设计模式已经在smalltalk-80中提出了,并广泛应用于软件设计,介绍它到网页应用程序开发却仍很困难的。主要由于以下两个因素:1)首先,很难独立 来自HTML的编程语言。早期的CGI程序使用字符串输出创造了HTML内容。默认的,将HTML文本分成几份,然后把他们嵌入到CGI程序中。脚本语言出现后,变成了脚本语言编写的程序嵌入到HTML文本中。然而,这两种方法有一个共同的不足,使他们不能完全独立于HTML文本。因此
5、,这两种方法使采用MVC分离三层模式十分难以实现。2)第二,脚本语言的功能太弱。他们缺乏一些必要的技术支持来采用MVC的设计模式,如消息机制和事件回应机制。直到JSP Model2版,这种情况并没有受到任何改善。依靠强大的Java语言功能,JSP Model24某种程度上实行MVC设计理念。图 1显示了MVC的机制:模型(数据层):它是封装到企业JavaBean。视图(表示层):JSP负责的网页方式,如报告的格式,分页等。控制器(控制层):Servlet受到网页上的用户的输入并执行有关的操作(呼叫相应的EJB组件),给出了相关视图,所以JSP会呈现这些结果。 JSP Model2机制主要满足了
6、开发商对要求Web应用逻辑和用户界面独立的需求。但制仍然存在某些限,例如,尽管JSP Model2已经实施采用MVC设计模式的基本理念,三个层次之间的相互关系(Servlet,Java Bean/ EJB和JSP)仍然封闭。特别是,就Servlet当控制器,不仅控制选择同时响应模型的模块,还负责对处理JSP转移数据提供模块。因为这一过程,Servlet本身已实现非常复杂的执行逻辑,对于体系的发展和维护这是正是一个棘手的问题。因此,在下面的网络应用系统框架,我们会进一步划分出功能的控制器。3.解决方案 图2中显示,这一系统框架包含三个内核控制对象/类(SYSController, Model C
7、enter, and LPM(Logical Page Module) Center)和它们的核心数据库(system description database, model database, and LPM database)。这三个控制对象/类根据原始的控制器划分。通过这些控制对象/类和数据库,下文将解释部分的设计思想和该系统框架的实现机制。 首先,我们考虑SYSController和系统的描述数据库。他们负责接收用户的要求和根据这些请求搜索有关的执行逻辑。系统描述数据库可以是一个XML2文件或一套XML文件。这个数据库描述了不同的执行逻辑与不同的用户请求。执行逻辑主要包括互动模式、数据
8、来源与异常处理等,这些组织在一个树形结构中。而SYSController可以搜索系统描述数据库。它结合了用户的要求和来自数据的执行逻辑,然后把它们交给传输器来封装。SYSController有两种方法搜索数据库。 其一是使用DOM对象(Document Object Model)3。当应用程序系统开机,这样需要DOM解析器分析整个数据库备案后载入内存。数据库将保留在内存中的DOM树结构。另一种是使用SAX(Simple API for XML)接口。两者有各自的优缺点。使用DOM可以实现结构搜索。它可以在大型数据库上使用,但是会暂用更多的系统资源。而SAX接口以高效率和更少的系统资源占用率著称
9、。唯一的缺点是它获得信息比DOM难。 其次,我们考虑模型中心和模型数据库。该层通过调用给定模块完成定义执行逻辑。模型数据库包括大量的对象和模块。这些对象和模块根据特定的执行逻辑封装响应方法。当模式中心接收到的执行消息,它根据封装在信息里的执行逻辑选择合适的对象或模块。然后按照给定的数据格式封装模块,冰传输给LPM中心。此外,每个对象或模块只需要关心如何实现给定的事务的逻辑以及如何获得必要的数据而不提交这些数据。 最后,我们研究一下LPM中心和LPM数据库。LPM是实施描述的某一种数据类型的项目集合,它可以当成是一个或一组磁盘文件。在另一方面,有一个网页可有一个逻辑页或多条逻辑页。一个LPM的功
10、能是很简单的:它只需要在没有被得到执行逻辑和原数据内容的情况下给定数据类型。因此事实上,LPM是作为标签库(JSP)或数据捆绑(.net)而开发的。此外,这种类型的服务器脚本可以很容易由客户开发人员在UI(user interface)设计阶段理解,what-you-see-is-what-you-get(所见即所得)工具也很容易开发。在这部分,LPM中心从模型中心收到数据。它根据给定数据类型和执行逻辑选择适当的逻辑页模块,然后封装逻辑页的输出模块到HTTP响应并将发布到客户端。注意到这3个控制对象,除了SYSController,另外两个不是直接进入自己的核心数据库。例如,模式中心不直接从模
11、型数据库调用对象或模块。它实现了通过ModelFactory的存取。(过程见图2) 通过分析系统框架,可以看出整个系统完全符合MVC设计模式。在在系统的开发时期各部分的开发者三者冰不具有相互的干涉。当系统框架已确定,各部分惊人的发现开发的相似。在过去这对网络应用程序的开发来说是不可能的。因为我们已经把控制器分为3个部分,MVC三层(模型/视图/控制器)的联系变得更加宽松。所以它可以明显提高整个系统的可扩充性。在下一节,我们将向你展示一个简单的例子去解释如何在三层MVC模式的过程通过增加中间执行步骤扩大系统框架。4.相关问题 检查目前的网络应用程序设计模式(如CGI,JSP Model2等等),
12、我们可以获得初步结果:MVC模式是一个优于其他系统逻辑框架的网站应用系统开发模式,它平衡了合作开发、系统的可扩展性和可维护性。这主要由于旧设计模式对系统逻辑框架的独立性的不足之处。例如,在通过CGI开发的网页系统中,CGI程序不仅需要处理执行逻辑,同时也负责系统报告的格式。因此,它要求开发者有很强的编程能力(他们必须非常熟悉执行规划和界面设计)。此外,它甚至会使系统的逻辑层次混乱。最后,混沌编码会带来一系列的问题。使用服务器脚本语言(如ASP,PHP等等)实现的网页应用系统也不符合要求。其原因是,这些脚本语言都有天生的缺陷(例如,他们却没有有好的对象支持和事件响应机制等);他们不能令人满意地缩
13、短网络应用系统的执行逻辑。由此JSP Model2的不足已在上文描述过了,所以没有这个必要在这赘述了。5.结论 从上述对系统框图的分析,我们可以做一个结论。改进后的MVC设计模式框架比传统方法有更清楚的结构,每个模块间的联系甚少。框架解决是一个大问题,曾困惑很多网络开发者。它将执行逻辑从表现模式独立出来,实施并行进行发展。此外,利用模型数据库和LPM数据库,这个更系统的灵活性、可维护性和可扩充性得到了显著提高。本篇讨论的框架已经在UEST网络应用系统上得以实施()。参考文献1 Erich Gamma. Design Patterns. U.S. Addison-Wesley Pub Co.2
14、Didier Martin. Professional XML. U.K. Wrox Press.3 Stephen T. Mohr. Designing Distributed Applications with XML, ASP, IE5,LDAP & MSMQ. U.K. Wrox Press.4 Sun Microsystems Inc. JavaTM Servlet 2.3 and JavaServer PagesTM 1.2 Spec fications.5 Sun Microsystems Inc. JavaServer PagesTM Standard Tag Library
15、Specification原文一:A Novel Web Application FrameDeveloped by MVCLuo GuangChun WangYanhua Lu Xianliang Hanhong* Luo Guangchun, the Ph.D. of UEST of China; Wang Yanhua, the Master of the UEST of China; Lu Xianliang, the professor of UEST of China, advisor of Ph.D.; Han Hong, the Ph.D. of UEST Of China(I
16、nformation Center of UEST of China, ChengDu, China 610054)AbstractThe MVC (Model/View/Controller) design pattern was developed in Smalltalk-80 and widely used in software design. This paper introduces a novel Web application frame based on MVC. This frame separates the transaction logic from the pre
17、sentation format. It also improves the system maintainability, scalability and performance by using the module database, template database, messaging object and buffer queue.Key words: MVC, Design Pattern, Web Application1. Introduction Web application system is a transaction system based on B (rows
18、er)/S(erver) model. It exploits many kinds of dynamic Web developing technologies. At present, Web application developing patterns and tools are one of the topics of the software design. They directly influence several key factors such as maintainability, scalability, stability and the security. In
19、this paper, the purpose of MVC1-based Web application design pattern is to resolve the two factors maintainability and scalability, which are the stubborn problems in the Web application development. By introducing the MVC design pattern into the Web application development, the implementation of sy
20、stem transaction logic can be separated from the system presentation.MVC consists of three kinds of objects. 1) the Model: is the application object, 2) the View: is its screen presentation, 3) the Controller: defines the way the user interface reacts to user input. Before MVC, user interface design
21、s tended to lump these objects together. However, MVC decouples them to increase the flexibility and reuse. MVC decouples views and models by establishing a “subscribe/notify” protocol between them. A view must ensure that its appearance reflects the state of the model correctly. Whenever the models
22、 data changes, the model notifies views that depend on it. In response, each view gets an opportunity to update itself. This approach lets you attach multiple views to a model to provide different presentations. You can also create new views for a model without rewriting it.2. Background and Problem
23、s Even though the MVC design pattern was already put forward in smalltalk-80 and widely used in software design, it is difficult to introduce it into the Web application development. It was mainly due to the following two factors: 1) First, it was difficult to separate the programming language from
24、HTML. Early CGI programs created the HTML content by using character string output. In nature, it divided the HTML content into several portions, and then inserted them into the CGI programs. After the appearance of Script languages, the way changed to insert the programs written by script languages
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 一种 网络 应用程序 开发 框架 mvc 外文 文献 翻译 学位 论文
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【可****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【可****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。