《Web应用的发展》PPT课件.ppt_第1页
《Web应用的发展》PPT课件.ppt_第2页
《Web应用的发展》PPT课件.ppt_第3页
《Web应用的发展》PPT课件.ppt_第4页
《Web应用的发展》PPT课件.ppt_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第1章 Web应用的发展 Web应用程序也就是基于网页的应用程序,用户无 需安装任何专用程序,只用浏览器来访问服务器 ,通过浏览网页就可以实现业务流程。相对于原 来的客户端/服务器(C/S)模式,这种新的程序 开发模式称为浏览器/服务器(B/S)模式。它是随 着Internet技术的兴起,对传统结构的一种改进 。Web应用的业务逻辑完全在应用服务器端实现, 客户端只需要浏览器即可进行业务处理,是一种 全新的软件系统构造技术。这种结构更成为当今 应用软件的首选体系结构。 1.1 从静态网页说起 最开始的Web只是一个一个的站点(website),还不能称作应用程序,它 们由很多静态网页堆积而成,内容更新只能通过修改网页本身来实现。 静态网页是指没有后台数据库、不含程序、不可交互和不会有任何改变的 网页。静态网页的内容变化只能通过重新编辑网页文件来实现。绝大部分 静态网页是以htm或html结尾的html文件编写的。在程序设计中一般又把 html网页称为静态网页。 HTML是Hypertext Markup Language的缩写,中文也就是超文本链接标示 语言。HTML文本是由HTML命令组成的描述性文本,HTML命令可以说明文字 、图形、动画、声音、表格、链接等。 1.2 动态网页的鼻祖CGI 随着互联网的发展越来越多的应用程序也希望转移到Web上 去,真正的Web应用开始出现,查询数据库、调用程序处理 、发送电子邮件等等。必须要有动态网页才能满足用户的 需求,最早的动态网页是CGI程序。 CGI(Common gate intergace)通用网关接口的简称。它 是一段部署在服务器上的程序供同客户端的页面来调用的 接口,通俗的讲CGI就像是一座桥把网页和Web服务器中的 执行程序连接起来,当用户在浏览器端填好表单(form) 要求输入的资料,提出HTTP请求后,Web服务器端将执行一 个表单所设定的可执行的CGI应用程序,CGI程序分析表单 (form)中所输入的资料,存取数据库,将查询执行的结 果以HTML的格式返回给浏览器。CGI可以实现处理表格,据 库查询,送电子邮件等许多操作,CGI使网页变得不是静态 的,是交互式的。 1.3 三足鼎立 虽然CGI可以实现动态网页,但它还是基于传统的 编程方式,尤其是不适合网页输出。网页的输出 需要用大量的print语句来实现,开发者几乎无法 从程序中看出最后输出的网页的是什么样,更无 法使用网页编辑工具,程序设计人员与网页开发 人员无法分工协助。于是替代CGI专为开发动态网 页的语言出现了,目前最热门的有3种:ASP、JSP 和PHP。它们占据了Web应用的绝大部分市场,而 且各有优势成了三足鼎立之势。 1.3.1 系出名门-ASP和ASP.Net ASP是微软公司开发的代替CGI脚本程序的一种应 用。ASP是Active Server Page的缩写,意为“活 动服务器网页”。ASP是在服务器端运行的,可以 用来创建和运行动态网页或Web应用程序。ASP网 页可以包含HTML标记、普通文本、脚本命令以及 COM组件等。利用ASP可以向网页中添加交互式内 容(如在线表单),也可以创建使用HTML网页作 为用户界面的Web应用程序。 ASP在外表上看起来仍然是一个HTML文件,只是在 需要变化的部分加入的了一些ASP特有的脚本,这 些脚本又称为ASP Bean。 1.3.2 草根中走出的巨人-PHP PHP是:Hypertext Preprocessor(超级文本预处理语言)的缩写 。PHP是一种开放源代码的脚本编程语言,与ASP和JSP一样都是一 种在服务器端执行的嵌入HTML文档的脚本语言,也需要在容器中 运行,语言的风格有类似于C语言,现在被很多的网站编程人员广 泛的运用。PHP独特的语法混合了C、Java、Perl以及PHP自创新的 语法。PHP具有非常强大的功能,所有的CGI或者JavaScript的功 能PHP都能实现,而且支持几乎所有流行的数据库以及操作系统。 从一开始PHP就开源项目的面孔出现,PHP成功的两大秘诀,第一 条就是简单,为编程者提供最大的便利。第2条就是“Community (强大的社区)”,众多的个人参与者对PHP的发展提供了非常大 的帮助,所以PHP被戏称为草根语言。以上特点使PHP也有相当多 的支持者,PHP的最新版本PHP5也进入的面向对象语言的特性,在 Web应用开发领域是微软ASP、SUN的JSP有一个有利的竞争者。 1.3.3 来自Java阵营-JSP和J2EE JSP(JavaServer Pages)是由Sun公司倡导、许多公司参 与一起建立的一种动态网页技术标准。JSP技术有点类似 ASP技术,它是在传统的HTML文件中插入Java程序段( Scriptlet)和JSP标签(tag),从而形成JSP文件,文件 扩展名就是.jsp。 JSP技术使用Java编程语言编写类、标签和Scriptlets,来 封装产生动态网页的处理逻辑。网页还能通过tags和 scriptlets访问存在于服务端的资源的应用逻辑。JSP将网 页逻辑与网页设计和显示分离,支持可重用的基于组件的 设计,使基于Web的应用程序的开发变得迅速和容易。最重 要的是因为JSP由Java语言编写,可以说JSP的跨平台能力 是与生俱来的。JSP也需要自己的运行环境,称为JSP服务 器或者JSP容器,目前流行的JSP服务器有开源项目Apache- Tomcat、JBoss和厂商提供产品的weblogic、webshpere等 等 1.4 模型-视图-控制器(MVC) 设计模式是一套被反复使用、多数人知晓的、经 过分类编目的、代码设计经验的总结。MVC正是这 样的一个设计模式,它强制性的使应用程序的输 入、处理和输出分开。在Web应用中MVC模式被极 广泛才采用,几乎所有的设计人员都或多或少的 要遵循或者参考MVC模式。 1.4.1 MVC简介 MVC本来是存在于桌面应用程序中,M(model)是指数据模 型,V(View)是指用户界面,C(Control)则是控制器。 使用MVC的目的是将M和V的实现代码分离,从而使同一个程 序可以使用不同的表现形式。后来MVC被借用到Web应用开 发中去,发现更能发挥它的威力,最后被Sun公司推荐为 J2EE平台的一个经典模式。模式并不局限与某种语言,MVC 模式在.NET和PHP中同样有其实现方法。 模型、视图与控制器的分离,使得一个模型可以具有多个 显示视图。如果用户通过某个视图的控制器改变了模型的 数据,所有其它依赖于这些数据的视图都应反映到这些变 化。因此,无论何时发生了何种数据变化,控制器都会将 变化通知所有的视图,导致显示的更新。这实际上是一种 模型的变化-传播机制。模型、视图、控制器3者之间的关 系和各自的主要功能, 1.4.2 MVC的组成部分 视图(View)代表用户交互界面,对于Web应用来说就是 HTML界面。随着应用的复杂性和规模性,界面的处理也变 得具有挑战性。一个应用可能有很多不同的视图,MVC设计 模式对于视图的处理仅限于视图上数据的采集和处理,以 及用户的请求,而不包括在视图上的业务流程的处理。业 务流程的处理交予模型(Model)处理。比如一个订单的视 图只接受来自模型的数据并显示给用户,以及将用户界面 的输入数据和请求传递给控制和模型。 模型(Model):就是业务流程/状态的处理以及业务规则 的制定。 控制(Controller)可以理解为一个分发器,他来决定选 择什么样的模型,选择什么样的视图,可以完成什么样的 用户请求,控制层并不做任何的数据处理。 1.4.3 MVC带来的好处 既然所有的模式是经典代码的总结,是经过反复验证的经 验,那么MVC模式也一定有很多优势,下面分析MVC到底带 来了哪些好处。 大部分Web应用程序是用ASP,PHP或者JSP开发出来。它们 将像数据库查询语句这样的程序代码和像HTML这样的表示 层代码混在一起。经验比较丰富的开发者会将数据从表示 层分离开来,但这通常比较困难,尤其是维护他人编写的 已有代码。MVC从根本上强制性的将它们分开,最大程度上 实现了程序代码与网页的分离。 多个视图能共享一个模型,现在需要用越来越多的方式来 访问你的应用程序。对此,其中一个解决之道是使用MVC, 无论你的用户想要Flash界面或是WAP界面,用一个模型就 能处理它们。由于数据和业务规则从表示层分开,所以可 以最大化的重用代码。 1.5 Ajax的兴起 J2EE和.NET等框架使服务器端的设计和开发有了 很大的发展,而用户界面的改善却一直比较滞后 ,总是一个网页转向另一个网页,强制用户进入 提交、等待、重新显示的范例,用户的动作总是 与服务器的“思考时间”同步。而Ajax的出现极 大的丰富了用户体验,出现时间不长其影响却非 常之大。这里不得不提到Google,Google是Ajax 的推广者也是实践者,他的产品中大量使用了 Ajax,同时也提供了很好的Ajax的开发包。为 Ajax的兴起了很大作用。 1.5.1 什么是Ajax Ajax不是一种新技术,实际上它由几种蓬勃发展的技术以 新的强大方式组合而成。Ajax包含: (1)基于XHTML和CSS标准的表示; (2)使用Document Object Model进行动态显示和交互; (3)使用XML和XSLT进行数据交换与处理; (4)使用XMLHttpRequest与服务器进行异步通信; (5)使用JavaScript绑定一切; Ajax是由Jesse James Garrett创造的,他说它是 “Asynchronous JavaScript + XML(异步JavaScript和 XML)的简写”。 1.5.2 Ajax的工作原理 Ajax的核心是JavaScript对象XmlHttpRequest。该对象在 Internet Explorer 5中首次引入,它是一种支持异步请求的技术 。简而言之,XmlHttpRequest使您可以使用JavaScript向服务器 提出请求并处理响应,而不阻塞用户。如图展示了Ajax页面与后 台交互的过程与传统页面刷新模式的不同。 1.5.3 Ajax的优势所在 Ajax引擎读取信息,并且互动地重写网页,这使 网页能无缝化更新,也就是在页面已经下载完毕 后改变页面内容,这不仅仅是网页内部的互动还 可以从外部获取数据。在以前只能有用户来输入 数据提交并刷新网页,但现在使用 XMLHTTPRequest可以不重载页面的情况下读写服 务器上的数据,使用户的输入达

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论