今天,Internet已经成为一种最基本的社会基础设施,它几乎渗透到了现代社会的每一个角落。无论是IT专业人员、其他工作人员还是一般计算机用户,互联网已经成为人们最主要的通信、获取信息和发布信息的媒体。互联网应用的普及推动了人们对学习和了解Internet相关技术的社会需求。但是,走进书店或在Internet上查询,关于互联网的书籍铺天盖地,令人眼花缭乱,以至于我们无所适从。为此,我想编写一本介绍互联网开发和应用的综合性书籍,使大家对目前的互联网,特别是Web技术从概念、原理和应用上有一个总体的了解和把握,这就是本书第1版写作的初衷。
从2005年本书第1版的出版到现在,三年过去了,《Web技术导论》一书受到了许多老师的认可,被选作他们的教科书。我也非常高兴地收到了多位任课教师的邮件,与我交流书中的相关技术,有些老师还非常诚恳地对本书提出了一些良好建议,例如,增加有关Web服务、SOA等最新Web概念的内容,去掉操作性的多媒体制作章节,等等。这些良好的建议和这几年来我在Web开发中的一些新的认识和体会促使自己决定对第1版的内容进行彻底的修订,增加更多新技术的讲解,特别是Web环境下的软件体系结构、设计模式、开发模式、AJAX技术等新的内容,从而使本书能够紧跟互联网的发展步伐。
本书作为一本导论性质的书籍,全面介绍互联网的发展历史、最新的科学进展、Web的工作原理、计算模式和软件体系结构的演变、Web核心技术、互联网语言、Web设计模式、Web客户端开发、Web服务端开发等内容。相信这样的内容安排对大多数读者都会有所帮助。如果你是一个初学者,这本书会为你答疑解惑; 如果你是一个初级的开发人员,这本书可以为你建立一个Web开发的基本框架,引领你进入Web开发的广阔天地; 如果你是一个高级开发人员,本书的综合性内容也会为你阅读其他专业知识做一个基本知识的铺垫。
本书与第1版一样,仍然分成6章,主要内容如下:
第1章Web基础。介绍互联网的发展和相关概念,Web的工作机理以及Java技术、XML、Web服务等Web核心技术,还介绍了计算机软件体系架构的演变和SOA体系架构的思想,最后介绍了Web 2.0和语义Web的发展。
第2章Web服务器的架设和管理。首先介绍了操作系统和Web服务器的概念,然后介绍了Windows平台下的Web服务器的架设和管理,主要讲解了Windows Server平台中的IIS,对IIS的讲解比较简单,易于理解。在理解了Web服务的管理后,重点讲解Apache Tomcat的架设和管理以及Web应用的部署等。Apache是开发Web应用最常用的运行平台。最后对Web服务器的远程管理进行了讲解。
第3章HTML和XML基础。首先介绍了标记语言的概念,介绍HTML标记语言的基本语法,并安排了大量实例来说明每种元素的含义和使用。对HTML和XML的本质区别进行了深入的分析和总结。讲解了XML相关的规范,包括可扩展样式语言XSL、XML路径语言XPath、XML查询语言XQuery、可扩展连接语言XLL、XML文档对象模型DOM与简单应用程序接口SAX,并对它们之间的关系进行了总结,这些内容对大家理解以XML为核心的Web技术具有重要意义。
第4章网页设计与制作。网页是Web应用的主要用户界面,在HTML和XML基础上,加强了网页设计的讲解,包括页面功能与内容设计、页面布局设计、页面视觉设计以及页面效果设计等。然后,介绍了可视化的网页制作工具FrontPage。
第5章客户端开发。首先讲解了Web浏览器的基本工作原理,然后讲解了客户端脚本程序设计语言JavaScript、浏览器对象模型BOM、HTML文档对象模型DOM、Web交互的内容。增加了AJAX技术的讲解,最后详细讲解了两个综合性客户端开发实例。
第6章服务端开发。首先介绍了B/S三层结构的概念,然后重点讲解了Java技术及其在Web开发中的应用,包括Java程序设计语言、Java Applet、JavaBeans、Servlet服务器程序、JSP技术以及MVC设计模式。在JSP技术中,讲解了JSP的语法、内置对象、数据库操作、图形操作等许多实用的内容。最后,讲解了在线聊天Web应用的整个开发过程,同时对常用的Java开发工具进行了介绍。
作为互联网的用户和Web技术的开发者和实践者,同时,作为一个公司派的高校教师,虽然我的初衷是要使本书既包含较广的理论知识,又有很好的技术内容,但是要真正地将理论和技术结合起来是很困难的。一方面是Web相关的技术实在太多,作者本人的知识面和认识有限,加之时间仓促; 再者是考虑到读者的实际应用需求非常多样,很想把一些更实用的软件代码介绍给大家,并进行讲解,但是受到篇幅的限制,也不能如愿。
在本书写作的过程中,我要非常感谢我的同事巩裕伟教授,他是一名优秀的老师,总是将计算机技术深入浅出地传授给学生,受到学生的普遍欢迎; 同时,他还是一位很好的程序员,编写了大量的Java、JSP、VB程序和数据库应用系统; 另外,他还是一位出色的作者,我们合作编写过许多计算机的书籍。我要感谢我的同事焦文江老师,他对网络环境有着很深入的研究,对网络设备非常熟悉,对待工作总是认真负责。同时我要感谢参与本书编写工作的杨兴强、吕刚、阚铮和李蕴几位老师。还要感谢我的学生苏雪、常跃峰、崔旭和朱岩,编写了大量的程序代码,祝愿他们在以后的工作和生活中一切顺利,取得更大的成绩。还要感谢孟祥旭教授、王海洋教授、马军教授、张彩明教授、徐秋亮教授、龙世立研究员,作为领导、同事和朋友,他们在学术上和事业上都给了我很大的帮助。还要感谢山东大学研究生院的立项资助。最后,要感谢Internet本身,是它为我们提供了海量的信息和如此快速、便捷的交流平台。
由于本书涉及的内容非常广泛,在深度和广度上很难做到完美,加之作者水平有限,书中难免存在错误和不足,请读者批评指正。
作者Email: hxw@sdu.edu.cn。
本书配套课件等资源可以从清华大学出版社网站http://www.tup.tsinghua.edu.cn下载。
作者
2008年11月
