
本书简单回顾了Internet和Web的起源及发展,用浅显的语言进述了Web的工作原理和模式,对目前应用最广泛的各种Web技术进行了介绍,使读者对建立和维护Web站点所需的各种编程工具和技能有了较为全面的认识。全书共分12章,包括:入门基础、HTML介绍、级联样式表、Perl基础、使用Perl进行CGI编程、JavaScript基础、JavaScript与HTML文档、用JavaScript实现动态文档、Java小程序、XML介绍、Web服务器和Servlet介绍、使用Java访问数据库。 本书可以作为Web程序员的参考书,也可以作为高等院校计算机专业低年级学生的入门教材。本书注重概念性和实用性的统一,并配有精选实例,以供读者参考。
出 版 说 明 在人类迈入信息时代的今天,信息技术的应用无处不在,我国对信息技术的重视和鼓励也达到了空前的程度。信息技术的发展速度很快,可谓日新月异,尤其在一些发达的国家更是如此。我国信息技术起步较晚,但发展速度惊人,这正是改革开放的具体体现。在我国大力发展信息产业的今天,为了能融入国际潮流和掌握最新的技术,从国外引进先进的知识和技术就显得格外重要。为此,我们决定引进一系列国外信息技术领域有代表性的优秀教材,献给我们的学子、教师和IT业的有志之士,藉此为我国的信息产业贡献一份微薄之力。 随着我国加入WTO,国际间的竞争将越来越激烈,而国际间的竞争实际上就是人才的竞争、教育的竞争。为了加快培养具有国际竞争力的高水平技术人才,加快我国教育改革的步伐,使我国的高等教育尽快与国际接轨,这就需要引进先进的教学思想和教学方法,而引进国外优秀的教材无疑是一种很好的途径。同时,引进国外的优秀教材也有利于提高我国自编教材的水平,让我们的教育工作者从中得到启发。 我们这套丛书遵循“新、优、特”的原则,做到知识新、质量优和内容有特点。这套丛书涵盖了计算机、通信、电子技术等领域,每一本书都经过精心挑选,在某个领域或学科内具有很强的代表性和很高的价值,很多在国外也被作为大学的教科书,由国际知名的出版公司出版。在引进过程中,我们邀请有关专家对书稿的整体水平进行了评定;在翻译过程中,我们聘请国内相关领域内的有很高学术水平的专家和学者担任译者,以保证书籍的水平和质量,做到对读者负责,为读者着想。 相信这套丛书的出版,对正在苦读和即将面临挑战的学子们会有很大的帮助,也能使我们的教学工作者从中得到启发,同时也为从事IT行业的工程技术和研究人员提供了一套很难得的工具书。 机械工业出版社 译者序 当今社会已经跨入信息时代,随着互联网的普及,网络已经不可避免地融入到人们的日常生活中,成为人们获取信息、相互交流的重要途径之一。在互联网上建立和维护各种各样的Web网站是互联网得以迅猛发展的重要原因。我们向读者推荐本书的目的,就是使读者能了解和掌握有关Web网站的各种主流技术,进一步推动互联网的应用和发展。 本书内容丰富、概念明晰、语言简练,作者在书中列举了大量的代码实例,并在各章都准备了一定数量的复习题和练习。在本书最后的附录中还为C++程序员提供了有关Java语言的简要介绍。本书无论是对有经验的程序员,还是对初学者,都不失为一本有价值的参考书。 参加本书翻译的人员有刘庄(第1~5章)、姜少峰(第6~9章)、孙锋(第10~12章及附录),范国强和宋群也参与了部分翻译工作,全书由刘庄统稿。赵子江副教授、师雪霖博士在本书的翻译过程中给予了大力支持,在此表示感谢。 由于时间仓促,加之译者水平有限,不妥或错误之处在所难免,敬请读者批评指正。 译者 前言 很难评价万维网(World Wide Web)在人们的日常生活中所产生的重大影响。在最近的几年中,我们已经学会了使用Web去完成许多事情,包括了从航空机票的出售到每天早上商人对重要商业信息的收集等各项事务。 Web站点以成千上万的速度递增,这似乎表明了用来建立这些网站的各种技术是随手可得的、是高度发展的和随时都可用的,甚至是在Web出现之前就已经存在了。而且,也许有人会猜想那些建立这些网站的数以万计的人都处于失业状态中,他们等待就业机会,而当万维网出现的时候,这些人已经具有实现这个庞大构造任务的知识和能力。这些想法都不是真实的。大量的企业家,包括已经营公司的企业家和正在创办新公司的企业家,他们对新技术的需求会很快得到满足。程序员的大部分需求已经在一定程度上得到了满足,这些新程序员中有一部分是在高中毕业后就直接开始从事编程工作。不过大部分程序员以前都曾被软件开发公司的其他部门雇用过,他们都不得不去学会使用新的语言和新的软件系统。 直到最近一段时间,许多程序员通过公司的内部培训、通过在学院和大学中对有关Web技术的各种课程的学习或者通过自学,已经掌握了Web软件技术。在当地的书店中可以找到大量关于这些技术的专业练习书籍。最近几年,已经出现了一些尝试去涵盖各种Web编程技术的大学课程。而教授这些课程的教师目前遇到的一个困难就是缺少能满足他们需求的教材,许多有关Web编程技术的书籍都是专门为满足专业人士的需求而编写的,而大学生的需求与他们完全不同。学校教材和专业书籍最大的差别就在于作者对读者所具有的先期知识和经验的期望不一样,专业人员的背景知识变化范围很大,而专门为低年级计算机科学专业编写的书籍可以对读者的背景知识给出一些明确的设想,本书就是为这些学生编写的。 本书的目的是为读者提供建立和维护Web服务器站点所需编程工具和技术的全面介绍,在构建Web站点时使用了很多技术。现在有很多书(几乎全部是专业人员使用的书籍)对这些技术作了一一介绍。例如,仅关于HTML的书就有几十本。本书在给出Web如何工作的概念的同时,还介绍了使用最广泛的一部分Web技术。 本书的原稿已经在科罗拉多大学的春季学期中用做这个大学低年级Web编程课程的教材。在这门课中,第11、12章只是作了简单的介绍,并且学生也没有时间去做编程练习。学生需花大量时间学习的是Perl和JavaScript以及它们在Web编程中的使用,这些内容成为本书的重点。许多学生在学习这门课之前就了解了一些HTML,所以第2章可以快速带过。 学习本书最重要的先决条件是具备使用一些支持面向对象的程序语言进行编程的扎实背景知识。具有一些第二门编程语言的知识和一点UNIX知识是很有帮助的,它有助于学习本书中关于Perl部分,而且,对Web服务器来说UNIX仍是常用平台的选择。精通第二门编程语言使得学习新的编程语言更加容易。 我们对HTML、Perl和JavaScript作了严谨的介绍。对于Perl和JavaScript来说,我们首先对语言本身作了介绍,然后讨论了它们在Web编程中的使用。目前在许多学院和大学中,Java是系列介绍性的编程语言之一,这使得我们在讨论Java程序之前不必先介绍Java。对于那些没有将Java作为介绍性编程课程语言工具的机构来说,我们在附录中提供了Java的简要介绍。 XML现在已经成为Web系列技术中一个重要的补充部分,为了了解XML,我们用一个完整的章节对XML进行了介绍。Servlet也正在被广泛地使用,所以同样用一个章节作了介绍。对于Web程序员来说,必须具备数据库的相关知识和通过Web进行数据交互的能力,本书介绍了通过Web服务器使用数据库的知识,重点讨论了Java的JDBC系统。 第1章为本书其余部分的学习建立基础,在这一章里介绍了许多基础知识,包括有关因特网(Internet)、万维网(World Wide Web)、浏览器、服务器、URL、MIME类型和HTTP等的发展历史和特性,也包括了对本书其余部分绝大多数重要主题的简要概述。 第2章对HTML进行了介绍,包括链接、列表、表格、表单。本章通过一些小例子举例说明了许多在这一章中提到的HTML元素。 第3章的标题是级联样式表,级联样式表已成为对HTML标记中所指定的内容进行样式规定的标准方式。由于篇幅和这个主题复杂性的原因,我们没有涉及到样式表的所有方面,所讨论的内容包括样式表的层次、样式说明格式、样式类、各种属性和属性值以及颜色等。本章通过一些小例子举例说明了我们所讨论的主题。 第4章介绍了Perl作为一个通用编程语言的特点和性能。不论是在Web出现以前还是出现之后,Perl的功能和可移植性已经应用在大量的非Web应用程序中,包括UNIX系统的管理,以及作为一种编程语言用于编写一些通常用C完成的中小规模的编程任务。在本章的大部分篇幅里,我们将注意力主要放在Perl中那些用于CGI编程的部分,所涉及的内容包括控制语句、数组、哈希数组、引用、函数、模式匹配以及文件的输入和输出。 第5章介绍了使用Perl编写通用网关接口(CGI)程序的方法。尽管现在有很多编写CGI的工具,但是Perl仍然被广泛地使用,并且在编写CGI程序的时候,大部分情况下还是利用Perl来实现的。在这一章中首先介绍了CGI和CGI链接,然后描述了针对表单数据的查询字符串的形式,以及用Perl对查询字符串进行解码的各种方法。接着介绍了CGI.pm模块,该模块大大简化了使用Perl进行的CGI编程。本章的最后部分对利用CGI实现动画效果的过程作了简要的论述。在本章中列举了几个例子,用于演示在使用和不使用CGI.pm的情况下,如何利用Perl设计和编程实现普通的CGI作业。 第6章介绍了JavaScript的核心部分,JavaScript已经成为一种能用于大量不同应用程序的强有力的语言。当然,在本书中我们关注的重点在于它在Web编程中的使用。尽管JavaScript已经变得庞大而复杂,但是我们利用学生学习Java和Perl的经验使他们理解我们所讨论的内容,因而书中用一小部分篇幅对该语言作了有益的介绍。所讨论的主题包括JavaScript的对象模式、控制语句、对象、数组、函数、构造程序和模式匹配。 第7章讨论了与HTML文档相关的一些JavaScript的特性,包括JavaScript事件和事件处理模型的使用,这些都可以和HTML文档中的一些组件(elements)结合起来使用。 可能JavaScript中最精彩和最让人感兴趣的应用是使用文档对象模型(DOM)建立动态的HTML文档。第8章中描述了使用JavaScript和DOM对文档造成的一些变化,包括组件定位、移动组件、改变组件的可视性,改变文本的颜色、类型和大小,改变标记的内容和改变重叠组件的叠放顺序。 第9章中描述了Java小程序(applet)。首先介绍了各种小程序动作(applet activities)以及paint方法的基本知识,然后讨论了
出版说明
译者序
前言
第1章 入门基础
第2章 HTML介绍
第3章 级联样式表
第4章 Perl基础
第5章 使用Perl进行CGI编程
第6章 JavaScript基础
第7章 JavaScript与HTML文档
第8章 用JavaScript实现动态文档
第9章 Java小程序
第10章 XML介绍
第11章 Web服务器和Servlet介绍
第12章 使用Java访问数据库
附录 Java简介