本任务主要对Web开发的常用技术知识体系进行介绍,主要内容包括:Web技术概述、Web客户端技术概述和Web服务器技术概述。
Web开发技术简介
万维网(World Wide Web,WWW)也可以简称为Web。Web出现于1989年3月,是由欧洲量子物理实验室开发出来的主从结构分布式超媒体系统。
1990年11月,第一个Web服务器正式运行,通过Web浏览器可以查看Web页面。目前,与Web相关的各种技术标准都由万维网联盟(World Wide Web Consortium,W3C)负责管理和维护。
Web是一个分布式超媒体系统,它将大量的信息分布在网上,为用户提供多媒体网络信息服务。借助Web,人们只要通过简单的方法就可以很迅速、方便地取得丰富的信息。用户在通过Web浏览器访问信息资源的过程中,无须关心一些技术性的细节,而且界面友好,因此Web推出后就受到了热烈的欢迎,并得到了飞速的发展。
从技术层面上看,Web技术可以分为客户端技术和服务器技术。
Web是一种典型的分布式应用架构。Web应用中的每一次信息交换都要涉及客户端和服务器两个层面。
Web客户端的主要任务是展现信息内容。Web客户端技术主要包括:HTML、CSS和客户端脚本语言等。
Web上的一个超媒体文本,被称为一个页面(Page)。组织或者个人在Web上放置的起始页面,被称为主页(HomePage)或首页(Index)。首页中通常包含指向其他页面或其他节点的指针,该指针被称为超链接。在逻辑上被视为一个整体的、由一系列页面组成的有机集合,被称为网站(WebSite或Site)。
HTML是为创建页面而设计的一种标记语言。超文本标记语言(Hypertext Markup Language,HTML)是一种描述性语言,最初于1989年由欧洲量子物理实验室的蒂姆·伯纳斯·李(Tim Berners Lee)所发明。使用HTML编写的超文本文件,被称为HTML文件。它能在各种平台(如UNIX、Windows等)中执行。自1990年以来,HTML就一直被用作Web的信息表示语言。
超文本是一种组织信息的方式,它通过超链接将文字、图表或其他信息媒体关联在一起。这些相互关联的信息媒体可能在同一个超文本中,也可能在地理位置相距遥远的某台计算机的其他超文本中。这种组织信息的方式将分布在不同地理位置的信息资源随机连接起来,为人们查找、检索信息提供了更便捷的手段。
HTML是页面制作技术的基础,也是Web客户端技术的基础。它由一系列标记(Tag)组成。这些标记可以将网络上的文件格式统一,使分散的网络资源链接为一个逻辑整体。使用HTML可以在页面中定义标题、文本、超链接、表格或者图片等信息。这些信息由Web客户端的浏览器负责解释和执行,不需要服务器提前进行编译。Web服务器只负责HTML文件的存储。
在制作页面时使用串联样式表(Cascading Style Sheet,CSS),可以有效地对页面的布局、字体、颜色、背景等效果实现更加精确的控制。HTML与CSS的关系是“内容”与“形式”的关系。由HTML来确定页面的内容,由CSS来实现页面的表现形式。CSS能够对页面中元素的排版进行像素级的精确控制,可以增强开发者对信息展现形式的控制能力。
CSS由一个或多个样式属性及属性值组成。CSS内部样式表可以直接存放在HTML文件中,CSS外部样式表则保存在一个扩展名为.css的文件中。在HTML页面中可以通过一个特殊标记,链接并使用CSS外部样式表。
CSS的应用,简化了页面中HTML对版式、样式等进行控制的部分。CSS外部样式表能被浏览器保存在缓存空间里,可以加快页面的下载速度,减少需要上传的代码数量。并且只需要修改保存网站风格的CSS文件,就可以改变整个网站的风格效果。对页面数量庞大的网站进行修改时,这项技术就显得格外重要了,可以大大减少维护人员的工作量。使用CSS技术不仅可以静态地修饰页面,还可以配合脚本语言动态地对页面中的元素进行处理。
使用HTML和CSS只能制作出静态的页面,无法满足与客户进行动态交互的需求。当客户需要进行诸如计算、信息验证等任务时,就需要在页面中加入某种客户端脚本语言,以完成这种动态的交互式处理任务。
客户端脚本语言是可以嵌入Web页面中的程序代码。这些程序代码由客户端的浏览器负责解释和执行。客户端脚本语言可以实现以编程的方式对页面元素进行控制,从而增加页面处理任务的灵活性。常用的客户端脚本语言有JavaScript脚本语言和VBScript脚本语言。目前,应用较为广泛的客户端脚本语言是JavaScript脚本语言。
JavaScript(简称JS)脚本语言是在1995年由网景(Netscape)公司的布兰登·艾奇(Brendan Eich)开发的。它被广泛地应用于Web应用开发,常用来为页面添加各式各样的动态功能,为用户提供流畅、美观的页面浏览效果。
JavaScript脚本语言与其他的编程语言一样,有自己的基本数据类型、表达式、算术运算符及基本程序框架。通常JavaScript脚本语言是通过嵌入HTML页面中来实现自身功能的,但也可以将其保存为扩展名为.js的文件,这样有利于实现结构和行为的分离。
早期的Web服务器只是简单地响应浏览器发来的HTTP请求,并将存储在服务器上的HTML文件返回给浏览器。现在的Web服务器技术主要用于进行业务逻辑处理和与数据库等进行交互操作。
Web服务器技术主要包括ASP技术、JSP技术、PHP技术。
动态服务器页面(Active Server Page,ASP)技术是一种由微软公司提供的、使用很广泛的动态网站开发技术。它通过在页面代码中嵌入服务器的脚本语言来生成动态的内容。在服务器必须安装合适的解释器之后,才可以通过调用此解释器来执行相关的脚本程序。ASP技术主要用于Windows平台。随着微软的Windows平台进入.NET技术体系时代,ASP技术也发展到ASP.NET这个新的阶段。ASP.NET是.NET框架的一部分,可以使用任何.NET兼容的语言来编写基于ASP.NET的Web应用程序。
Java服务器页面(Java Server Page,JSP)是以Java语言为基础开发的。它沿用了Java语言强大的应用程序编程接口(Application Program Interface,API)功能。JSP中的HTML代码用来显示页面中的静态内容部分,嵌入页面中的Java代码与JSP标记用来生成页面中的动态内容部分。JSP可以被预编译,提高了程序的运行速度。用JSP开发的Web应用程序经过一次编译后,可以运行在绝大部分平台中,代码无须做任何修改,实现了“一次编写,到处运行”的技术效果。本书中讲解的Java Web动态网站开发将主要围绕JSP技术及其相关衍生技术展开。
页面超文本预处理器(Page Hypertext Preprocessor,PHP)是一种开发动态页面的技术。它是一种开源的Web服务器脚本语言。PHP的语法类似于C语言,并且混合了Perl、C++和Java等语言的一些特性。PHP提供了许多已经定义好的函数,因此有较强的扩展性。PHP可以被多个平台所支持,比较广泛地应用于UNIX、Linux平台。