基于web编程模式

基于web编程模式

ID:30801055

大小:96.50 KB

页数:9页

时间:2019-01-03

基于web编程模式_第1页
基于web编程模式_第2页
基于web编程模式_第3页
基于web编程模式_第4页
基于web编程模式_第5页
资源描述:

《基于web编程模式》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、基于.NET的Web应用框架构建模式来源:作者:发布时间:2007-11-0913:14:02•域名注册o域名惊喜价格cn域名1元注册ocom域名39.9元虚拟主机o主机按月支付,低至19元/月o超大流量,可开子站点VPS主机o特惠VPS168元/月,4-8M独亨带宽保证o独立操作系统,无限开站点[简介]本文对应于Web表示模式集群,文章的两半部分重笔堪的描述了MVC模式的架构、设计及KASP.NET实现,而在更加复杂的系统中,随后提出了PageController(页面控制器)和FrontController(前端控制器)作为MVC实现的补充,最后,简耍介绍了Web表示模式集群的另

2、外两个模式:InterceptingFilter(筛选器)和PageCache(页面缓存)模式。“体系结构设计者的第一个作品往往比较简练和T净。他知道自己并不了解正在进行的工作,因此他小心谨慎地设计他。在他设计第-个作品时,会进行多次修饰和润色。这些会留到“下一次”使用……这第二个系统是他原來设计的域危险的系统......一般趋势是,在设计第二个系统时,将会使用在第一个作品屮被小心搁置在一边的所冇思路和修饰,从而导致设计过了头。”?FrederickP.Brooks,Jr.发农于1972年的TheMythicalManMonth(人月神话)。Web上建立的第一个系统是简单地链接在一起

3、的静态HTML页面,以便在分散的小组之间共亭文件。随看用八的使用暈増加,可响应用户输入的动态网页口益普遍。早期的动态页而一般是以通用网关接口(CGI)脚本的形式编写的。这些CGI脚本不仅包含用來确定在响应用户输入时应当显示什么内容的业务逻辑,而且还会生成表示HTML。随着对更复杂逻辑需求的增加,对更丰富、更生动的表示形式的需求也随Z增加。这种增加了的复杂性给CGI编程模型帯來了挑战。不久基于页面的研发手段(如ASP和JSP)现了。这些新方法允许研发人员将脚本直接嵌入到HTML面屮,从而简化了编程模型。当这些嵌入的脚本应用程式变得更复杂时,研发人员希望在页而级別将业务逻辑和表示逻辑分开

4、。为适应这一需求,随Z出现了具有帮助器对象和代码隐藏页而策略的标记库。然后,又出现了提供动态设置站点导航和命令调度程式的精细框架,但所冇这一切都是以增加复杂性为代价的。假设目前有大竝的Web表示可选方案,怎么为你的应川程式选择适当的Web农示设计策略?是否真的冇一个设计策略能够适应所冇的情况?非常不幸,在软件设计中,消除过多的兀余和过度的复杂性是个竞争性需求,非常难能够真正做到两者Z间的平衡。你能从包含恢入脚本的简单贝而开始设计工作,但非常快业务逻辑就会不断晅复出目前各个文件中,从而导致系统难以维护和扩展。通过将该逻辑移到一组协作组件屮,能消除兀余,不过这样做会増加解决方案的复杂性。

5、另一方面,你的设汁工作能从设讣用來提供标记库、动态设置和命令调度程式的框架入手,可是这样虽然能够消除兀余代码,但他会人人増加系统的复杂性,而这通常是不必要的。而怎么考虑各个方面的需求,提出一个最合适我们应川的Web农示策略呢?这需要在复杂解决方案(支持将來町能发生变化的情形)和简单解决方案(满足目前的需求)Z间做出执择,原则上适当増加成木是可取的,而过多増加成本却是不可取的。那么废话少说,我们就从“简单”开始吧。MVC(模型?视图?控制)许多计算机系统的用途都是从数据存储检索数据并将其显示给用户。在用户更改数据Z后,系统再将更新内容存储到数据存储中。因为关键的信息流发生在数据存储和用

6、户界面Z间,所以你可能倾向于将这两部分绑在一起,以减少编码量并捉高应用程式性能。不过,这种看起來自然而然的方法有一些大问题。一个问题是,用户界面的更改往往比数拥存储系统的更改频繁得多。将数据和用户界面这两部分耦合在一起带來的另一个问题是,业务应用程式往往会并入远不止数据传输功能的其他业务逻辑。怎么让Web应用程式的用户界面功能实现模块化,以便你能轻松地独立修改各个部分?Model-View-Controller正是这样的模式,他实现功能模块和显示模块的分离,使得应用程式更加可维护,可扩展,可移植和可复用,他最初是TrygveReenskaug在二十世纪七十年代末为Smalltalk平

7、台研发的框架[Fowler03],而发展到H前为止,已形成了一个非常成熟的模式。MVC解决方案Model-View-Controller(MVC)t^式基丁•用户输入,将域的建模、显示和操作分为三个独立的^[Burbeck92]:q模熨。模熨用于管理应用程式域的行为和数据,并响应为获取其状态信息(通常來自视图)而发出的请求,还会响应更改状态的指令(通常來自控制器)。q视图。视图用于管理信息的显示。q控制器。控制器用丁•解释用户的鼠标和键盘输入,以通知模型和

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。