精华区 [关闭][返回]

当前位置:网易精华区>>讨论区精华>>网络专区>>● 网站建设>>盖世神功 — 网站建设技术>>HOME PAGE制作初步

主题:HOME PAGE制作初步
发信人: ouhx()
整理人: microant(1999-08-05 19:02:45), 站内信件




HOME PAGE

制作初步









清华大学计算机与信息管理中心

一九九六年六月十六日
 
前言
Home Page已成为Internet广大用户所熟悉的词语,随着WWW应用的迅速发展,学
会制作Home Page变得越来越重要。
Home Page可以理解为一种电子出版物,各大学、企业都十分重视提高Home Page
的制作水平,因为它是世界范围的广告,能不花钱或少花钱而达到最好的自我推
销效果。
现今人们又提出了建立Intranet(内部网),要求制作部门的甚至个人的Home P
age,为企业内部的信息交流共享提供更大的方便。
清华大学的Home Page是面向国内外、校内外的综合介绍,其中涉及各部门(系、
所、中心)的多种信息。其内容十分广泛,并且还要求内容及时更新,因此清华
Home Page不应是也不能是集中制作和维护,只能是统一设计下分布式制作和维护
的系统工程,凡是有条件的部门均应自行建立本单位的Home Page.
编辑这本小册子的目的就是为各单位在制作本部门Home Page时能提供一点技术支
持的参考资料。

除前言外的内容中,词汇表中定义的生词第一次使用时以斜体显示。

编写: 吴坪
审阅者: 佟秋利
沈锡臣
 目录
前言 2
第一章 WWW简介 5
1.1 WEB的特点 5
1.2 URLS简介 6
1.2.1 File URLs 6
1.2.2 Gopher URLs 6
1.2.3 News URLs 6
1.2.4 HTTP URLs 6
1.2.5 Partial URLs 7
1.2.6 Other URLs 7
1.3 CGI简介 7
第二章 HTML简介 9
2.1名词解释 9
2.2 网页的组织与安排 9
2.2.1首先要明确你想在网页上作些什么 9
2.2.2设定你的目标 10
2.2.3将要表述的内容分成各个主题 10
2.2.4几种组织和浏览结构 10
2.2.5几点参考意见 10
2.3初步尝试 10
2.3.1基本属性的确定 12
2.3.2表头 12
2.3.3标题 12
2.2.4段落 13
2.4连结其他文件 13
2.4.1跳转至另一篇文章 13
2.4.2跳转至另一个段落 13
2.5另一些标注(TAGS) 14
2.5.1列表 14
2.5.2预设文字格式(Preformated text) 16
2.5.3换行标记 17
2.5.4地址 Address 17
2.5.5字符格式化标记 18
2.5.6特殊字符 19
2.6图形功能(GRAPHICS FUNCTION) 20
2.6.1显示图形 20
2.6.2调用图形 20
2.6.3图形处理 20
2.7音频和视频 21
2.8表格制作 21
2.9 FORM 23
2.10帧格式 24
2.11常见问题 26
2.12较长而完整的范例 26
图七 27
第三章 TCP/IP的应用 28
3.1 TCP/IP应用一:远程登录(TELNET) 28
3.2 TCP/IP应用二:文件传输(FTP) 28
第四章 WEB服务器的建立 29
4.1服务器程序获取 29
4.1.1 Netscape Server 获取 29
4,1,2 HTTPD Server 获取 29
4.2 服务器程序安装 29
4.2.1 Netscape Server 的安装 29
4.2.2 HTTPD Server 的安装 30
4.3参数修改 31
4.3.1 Netscape Server参数设置 31
4.3.2 NCSA HTTP SERVER参数设置 31
4.4 需安装的其他程序 31
4.4.1 Perl安装 31
4.4.2 Counter安装 31
附录JAVA介绍 32
 

第一章 WWW简介
WWW(World Wide Web )是一种建立在Internet上的全球性的,交互的,动态,
多平台,分布式,图形信息系统。同TELNET、GOPHER、FTP、WAIS、BBS等相似。
它也是建立在Internet上的一种网络服务。它遵循HTTP协议。缺省端口是80。它
的开发最初是为了在科学家之间共享成果,科学家们可以将科研成果以图文形式
方在网上进行共享。它的最基本的概念就是Hypertext,如果您用过任何一种在线
帮助系统你就会比较了解它的结构了。现在WWW的应用以远远超出了原设想。成为
Internet上最受欢迎的应用之一。它的出现极大的推动了Internet的推广。
1.1 Web的特点
1. Web是一种超文本信息系统
  如前面提到的,Web的一个主要的概念就是超文本连接,它使得文本不再象一本
书一样是固定的线性的。而是可以从一个位置跳到另外的位置。你可以从中获取
更多的信息。可以转到别的主题上。想要了解某一个主题的内容只要在这个主题
上点一下,就可以跳转到包含这一主题的文档上。正是这种多连接性我们才把它
称为Web.
2. Web是图形化的和易于导航的(navigate)
  Web 非常流行的一个很重要的原因就在于它可以在一页上同时显示色彩丰富的
图形和文本的性能.在Web之前Internet上的信息只有文本形式。Web可以提供将图
形、音频、视频信息集合于一体的特性。同时,Web是非常易于导航的,只需要从
一个连接跳到另一个连接,就可以在各页各站点之间进行浏览了。
3. Web与平台无关
  无论你的系统平台是什么,你都可以通过Internet访问WWW。浏览WWW对你的系统
平台没有什么限制。无论从Windows平台、UNIX平台、Machintosh还是别的什么平
台我们都可以访问WWW。
  对WWW的访问是通过一种叫做浏览器(browser)的软件实现的。如Netscape 的N
avigator、NCSA的Mosaic、Mircorsofte的Explor等。
4. Web是分布式的
  大量的图形、音频和视频信息会占用相当大的磁盘空间,我们甚至无法预知信
息的多少。对于Web没有必要把所有信息都放在一起,信息可以放在不同的站点上
。只需要在浏览器中指明这个站点就可以了。使在物理上并不一定在一个站点的
信息在逻辑上一体化,从用户来看这些信息是一体的。
5. Web 是动态的
  最后,由于各Web站点的信息包含站点本身的信息。信息的提供者可以经常的对
站上的信息进行更新。如某个协议的发展状况,公司的广告等等。一般各信息站
点都尽量保证信息的时间性。所以Web站点上的信息是动态的。经常更新的。这一
点是由信息的提供者保证的。
6. Web是交互的
  Web的交互性首先表现在它的超连接上,用户的浏览顺序和所到站点完全由他自
己决定。另外通过FORM的形式可以从服务器方获得动态的信息。用户通过填写FO
RM可以向服务器提交请求,服务器可以根据用户的请求返回相应信息。
1.2 URLs简介
URL 是Uniform Resource Locator.即统一资源定位器。可以把它想象成文件名
的网络扩展。我们不但可以指出在目录下的文件名,并且可以指出在网络上的哪
一台机器的目录下的文件。这个文件可以通过各种不同的方式得到。在URL中还指
定了访问这一文件的协议。根据协议的不同可以把URL分成以下几种:
1.2.1 File URLs
指明一个FTP服务器可以简单的以如下方式指定:
file://ftp.net.tsinghua.edu.cn/
指定FTP服务器上的目录用如下URL:
file://ftp.net.tsinghua.edu.cn/pub
指定一个在匿名FTP服务器上的叫”boobar.txt”的文件,其URL如下:
file://ftp.yoyodyne.com/pub/files/foobar.txt
1.2.2 Gopher URLs
Gopher(信息鼠)URLs比文件URLs稍微复杂一点,因为Gopher服务器的处理机制略
复杂于FTP服务器。访问一个特定的Gopher服务器可以使用如下URL:
gopher://gopher.yoyodyne.com/
有些Gopher服务器可能不设在通常的端口上(缺省端口是70)。所以在指定某些
Gopher服务器时还需要指定端口,假设我们知道在机器”gopher.banzai.edu”上
的Gopher服务器的端口不是70,而是1234,则正确的URL应该是:
gopher://gopher.banzai.edu:1234/
1.2.3 News URLs
新闻组的URL非常简单:news://rec.gardening
1.2.4 HTTP URLs
HTTP是超文本传输协议标准。HTTP服务器通常用于超文本文档访问服务。它的U
RL写法和Gopher很相似,对于一个在www.yoyodyne.com服务器上的文件foobar.h
tml其URL是:
http://www.yoyodyne.com/foobar.html
和Gopher相似,HTTP的缺省端口是80,如HTTP指定其他端口则在URL中要写明这
个端口号。例如端口为1234则URL如下:
http://www.yoyodyne.com:1234/foobar.html
1.2.5 Partial URLs
Partial URLs是特指在文件中的超连接,它指向同一目录下或同一机器上其他目
录下的某一文件。这一URL大量应用在HTTP文件中。它可以使读者在多个文件之间
进行跳转。一般这些URL都不写明网络地址而只写相对地址。网络地址、目录、端
口号及访问方式等信息都从第一个文件中得到。
1.2.6 Other URLs
除上述几种URL外还有许多种URL。但上述是最重要的几种URL,关于其他URL的情
况可以在网上找到。(URL:http://www.ncsa.uiuc.edu/)
1.3 CGI简介
CGI(Common Gateway Interface)是信息服务的标准外部应用接口。一个通过We
b访问的简单HTML文档是静态的,即文件的内容是不变的。而一个CGI程序则不然
,它是实时的,所以它的输出的是动态的信息。
如果我们想在WWW和数据库之间建立联系,使人们可以从全球的任意地点都可以
查询数据库的信息。我们就可以用CGI来完成这一工作:Web服务器通过CGI程序传
送信息给数据库,从数据库得到返回的数据,Web服务器再将数据传给客户方的浏
览器。
当然数据库应用只是CGI应用的一个方面。CGI可以支持多种不同的应用、只要是
按CGI规范写的可执行的程序都可以是CGI应用。所以实际上对CGI程序没有什么限
制。

因为CGI程序是可执行程序,所以所有在Server方可执行的程序都可以是CGI程序
。所以一个CGI程序可以用任何一种系统上可执行的语言编写。如:
 C/C++
 Fortran
 PERL
 TCL
 Any Unix shell
 Visual Basic
 AppleScript
 
  用何种语言视编程者的喜好而定,C程序需要编译,而UNIX SHELL 或PERL等,只
要把程序放在/cgi-bin目录下就可以了。(也可以通过在服务器方指定文件后缀的
方式指定CGI程序)
  简单的来说一个CGI的实现是这样的:首先用户在浏览器中通过FORM向服务器发
送信息,CGI程序从服务器得到用户发来的信息。进行解码调用应用程序等处理之
后,以标准输出形式返回信息给服务器,再由服务器把输出返回给客户端。其流程
参见下图所示:
 
 
  Browser   Server
 
 第二章 HTML简介
HOMEPAGE(主页)是可以通过WWW查询的Internet上WWW站点首页。从某种角度来
说可以说是电子广告板、信息板,它包含了大量的信息。由于Internet以异乎寻
常的速度发展,WWW在信息交换查询中的地位得到了很大提高,这就使HOMEPAGE的
编写变得十分重要。
HOMEPAGE是以HTML格式写成的,HTML不是WYSIWYG(所见即所得)的,不过HTML非
常易学易用,它以标签(TAG)标示及排列各对象。而标签本身则以“<”和“>”
号标识,标签内的内容称为(ELEMENT),元素代表了标签的意义。一般格式为:
<ELEMENT>OBJECT</ELEMENT>
<ELEMENT ATTRIBUTE=ARGUMENT>OBJECT</ELEMENT>, 或者
<ELEMENT>
元素是与大小写无关的。它很类似与工业标准的SGML(标准广义标置语言),它
的结构可以归为SGML文档类型定义(DTD)。目前的版本是HTML2.0或3.0。支持H
TML3.0的Web浏览器有Netscape Navigator,Mosaic2.5b等。下面就简单介绍一下
用HTML写HOME PAGE的方法。
2.1名词解释
Web presentation Web表述,Web表述是包含许多连接在一起的用于表达某一目
的的网页的总称。它是一个体系结构。
Web pages 网页就是可以被浏览器访问的单个HTML文件。
Home Page 主页是Web站点的首页。即被访问站点的第一个网页。
WWW-- World Wide Web 全球资讯网
SGML -- Standard Generalized Marked Language 标准广义标记语言。
DTD-- Document Type Definition 文件类型定义。DTD和SGML的关系,就象C++
和计算机语言的关系。
HTML -- HyperText Markup Language 超文本标记语言。
HTML is a SGML DTD. 
超文本标记语言是一种标准标记文件的定义。而在全球资讯网中所阅读的文章,
正是依照种标准。
2.2 网页的组织与安排
在我们要在网上发布信息、建立网页之前首先注意以下几个原则和建议可能会有
助与今后网页的制作。
2.2.1首先要明确你想在网页上作些什么
在写HomePage之前最好要明确写HomePage的目的是什么,是个人信息、公司介绍
、在线文档、购物目录还是别的什么。有一个明确的目的对于Web presentation
的组织很有好处。当然这并不是说没有一个明确的目的就不能写主页。也可以在
制作中建立目的。只是那样工作量会比较大。会有一些重复的工作。
2.2.2设定你的目标
有了一个明确的目的后还需要确定一下Web的目标,比如写公司的HomePage有人
关心招聘方面的信息有人关心公司的产品还会有人想知道公司的技术发展状况。
作为Web的制作者就要先确定写Web要满足哪部分人的需求。确立目标可以有助于
在重多的信息中保证主要目标的实现。使信息不会被淹没在过多的额外信息中。

2.2.3将要表述的内容分成各个主题
在确立了目标之后就需要把要表述的内容分成各个主题来别论述。尽量使信息组
织的条理化。这就象写书要先写目录。一个好的组织结构会大大方便读者的浏览
。应该注意的是每个主题不要太笼统、范围太大,这样会使浏览者不知看哪个主
题好。要尽量保证主题与内容的一致性。
2.2.4几种组织和浏览结构
建立Web 出版有点象出书,但它的结构比书要复杂,一个Web出版常用的结构有
线性结构、层次结构、线性交换结构以及线性和层次相结合的结构。应该尽量避
免形成复杂的网状结构。在信息不断增多后日益复杂的网状结构会使维护工作非
常困难。
2.2.5几点参考意见
&#61548; 短小紧凑
短小紧凑可以快速下载,不要让用户等待的时间过长。一些小图标会比较有用。

&#61548; 信息要经常更新
前面讲过,Web是经常更新的。在主页上注明更新日期及URL对于经常访问的用户
非常有用。
&#61548; 主页上要有文字显示
并不是所有的浏览器都有图形浏览功能,有时为了节省时间用户会关闭浏览器中
下载图形的功能。所以在主页上最好有文字显示。
2.3初步尝试
现在,我们开始制作第一个HTML文件。
超文本标记语言(HTML)其实只是很平常,很普通的文本文件。你可以用你所熟悉
的文字编辑器来编辑它,例如EDIT、VI、WS、Word等,(但一定要以纯文本方式保
存,浏览器只识别纯文本格式的文件)不一定要用其它的新颖编辑器。只要通过一
些简单的标注,就可以让文章生动、活泼起来,这就是HTML的特色。下面是个简
单的例子,其文件名为test.html。
<HTML>
<BODY BGCOLOR=“#ffffff” TEXT=“660000”>
<TITLE>简单的HTML文件</TITLE>
<H1>这里放个标题</H1>
欢迎进入全球资讯网 !
这是第一段落的结束。<P>
<H2>这里是H2字体!!</H2>
<H3>这里是H3字体!!</H3>
<H4>这里是H4字体!!</H4>
另一段落的结束在这儿<P>
<H5>这里是H5字体!!</H5>
<H6>这里是H6字体!!</H6>
</BODY>
</HTML>
在Netscape Navigate 中调用test.html结果如如图一所示:
 

图一

<HTML> 是标记HTML文档的开始,在文件结束处要有对应的符号</HTML>。<BODY
>是标记文件体的开始,对应结束符是</BODY>。<BODY>还有一些属性可以设定背
景色,背景图形等。HTML语言的一大禁忌是标记交叉,这一点在写HTML时一定要
牢记。下面就各部分开始分别介绍。
2.3.1基本属性的确定
 在<BODY>元素可以确定整个文件的背景色、前景色等基本属性。
语法:
<BODY [BGCOLOR|TEXT|LINK|ALINK|VLINK|BACKGROUND]> 
OBJECTS 
</BODY>
BGCOLOR: HTML的背景色
TEXT: 指定HTML文件中文字色彩属性
LINK: 指定HTML文件中待连接超连接对象色彩属性
ALINK: 指定HTML文件中连接中超连接对象色彩属性
VLINK: 指定HTML文件中已连接超连接对象色彩属性
BAKGROUND: 指定HTML背景图形。
例子:
<HTML>
<BODY BGCOLOR=“FFFFFF” TEXT=“#000000” LINK=“0000FF” BACKGROUND=“
TEST.GIF”>
</BODY>
</HTML>
各属性的参数值可以是用英文描述的颜色如 ’RED’、’BLUE’、’YELLOW’等
,也可以是RGB值,共6位,每种颜色两位从00到FF。如红色可以表示为“ff0000”
,蓝色可以表示为”0000ff”等。某些HTML编辑器允许客户直接从颜色表中选取
。类似的软件有WebEdit,NetscapeGold、HTMLEDIT等。

2.3.2表头
<TITLE>和</TITLE>记号中间所包住的文字,就是这一篇文章的主题,它一定在
文章的最前面,它会显示在Web浏览器最上面的Title栏的位置。用户可以把它加
入BOOKMARK中(Netscape中),以便能迅速返回该文档。<TITLE>可以提供加入H
OSTLIST或BOOKMARK列表的文本,所以一定要使<TITLE>文本有明确的意义,不要
过于模糊和笼统。

2.3.3标题
HTML中的标题是通过<H>标记实现的。被<H1>和</H1>所夹在中间的文字,是文章
里的标题。它可以标注出六个层级的标题,从<H1>、<H2> 、、、、、到<H6>,也
可以说<H3>是<H2>的子标题。差别在於标题的文字会比子标题大些、粗些、更显
眼。在前面的例子里可以看见他们之间的差别。每遇到一个标题时,当前段落就
会被终止,标题前后会各留出一定的空白。文本从下一行开始。<H>的属性有COL
OR、ALIGN。分别标识标题的颜色和位置。
2.2.4段落
<P>是HTML格式中特有的段落元素。在HTML格式里我们不需要在意文章每行的宽
度,不必担心文字是不是太长了而被截掉;它会根据窗口的宽度做自动转折到下
一行的工作。因此,在原始文件中的<P>,就是指出了这儿告一段落,下面的文字
换行从头再开始。如果没有遇到<P>这个符号,它就会把所有之前的文字都挤在一
个段落里,不遇到窗口的边界是不会换行的。我们在原文件中的换行动作,若不
设标记,是会被视而不见的.
2.4连结其他文件
2.4.1跳转至另一篇文章
HTML文章的另一个特色,就是在文章段落间任意地跳转。可以跳到另外一台机器
上的文件,也可以跳到文章的另一个段落或本机的另一片文章。下面是它标注的
格式。基本上,它会是这一个样子:
<A href="filename.html" >Link to filename 
这表示我们将看到"Link to filename"会变色并加下底线出现在Netscape中,当
游标移到上面时,会从箭头转成手指,这表示你可以在这儿用鼠标按一下:会跳
转到filename.html的文章里。这很简单,我们只要把目的地赋给href就可以了。
href的参数就是后面要提到的URL。当它要跳转到别外一台主机时,"  "中的格式
是这样子的。
"Scheme://host.domain[:port]/path/filename"
scheme可以是file、http、gopher、WAIS,这要视该主机提供ftp节点。http代
表著另一台WWW伺服器。gopher代表目地的是gopher主机上的档案;WAIS亦同。这
些都是URL(Uniform Resource Locator) 有关URL的概念见后面的描述。
例如:想连结HTML的英文简介,可以写成下面那样:
<A HREF="http://www.ncsa.uiuc.edu/General/Internet/WWW/HTMLPrimer.ht
ml">
    NCSA's HTML Primer 

2.4.2跳转至另一个段落
除了跳到另一个HTML文件,也可以在一篇文章内随心所欲地跳转。首先看看它在
" "引号中的表示方式
<A HREF="#clients">Jump to Clients 
「Jump to Clients」会变色加上底线并连接到一篇文章中有标注<A NAME= "cl
ients"> Clinets 的地方。如果这两个标注是在不同的文件内,则表示方法
有点儿改变。若Jump to Clients 在A文章,而Clients 在B文章中,则要改成
<A HREF="filenameB#clients"> Jump to Clients 
这样一来,当我们在A文章中点Jump to Clients 时就会跳到B文章的Clients这
个字的位置,而不是B文章中的其它地方。

2.5另一些标注(tags)
下面我们一一列出另外的一些比较有用的标注。
2.5.1列表
a.未标序的列表(Unnumbered Lists )
先说明列表的种类
    ,然後在每一行文字前加上
  • ,最后加上列表结束符<
    /UL>例如:
     

        
    •  apples
        
    •  bananas
        


    输出如下:
       apples
       bananas

    要注意若使用不同的浏览器(Mosaic,Cello,Windeb)就可能会有不同的效果。在
    每一行的起始也许是圆形标记,或是一’□’标记。

    b.标序列表(Numbered Lists 或Ordered Lists)
    方法跟前者相似,先说明种类
      ,再加上
    1. 於各项之首,最后加上列表结束
    ,如下例:
     

        
    1.  oranges
        
    2.  peaches
        
    3.  grapes
        


    输出效果如下:
     1. oranges
     2. peaches
     3. grapes

    c.陈述式列表(Descricptive Lists)
    陈述式的列表包括了个别的主题和其叙述主题比叙述的部份凸前,为独立的一行
    。叙述的部分被视为一长串文字会自动折行。先标记<DL>,主题放在<DL>的后面
    ,叙述放在<DD>后面,最后以</DL>结尾。在<DT>和<DD>间,可以包含其它的标注
    元素,如下例:
    <HTML>
    <BODY>
    <DL>
      <DT> National Center for Supercomputing Applications
      <DD> NCSA is located on the campus of the University
      of Illinois at Urbana-Champaign. NCSA is a one of
      four member institutions in the National Metacenter for
      Computational Science and Engineering.
      <DT> Cornell Theory Center
      <DD> CTC is located on the campus of Cornell
      University in Ithaca, New York. CTC is another member
      of the National Metacenter for  Computational Science
      and Engineering.
      </DL>
    </BODY>
    </HTML>

    输出效果如下:

    National Center for Supercomputing Applications
       NCSA is located on the campus of the University of Illinois at
       Urbana-Champaign. NCSA is a one of four member institutions in the

       National Metacenter for Computational Science and Engineering.
    Cornell Theory Center
       CTC is located on the campus of Cornell University in Ithaca, New Y
    ork.
       CTC is another member of the National Metacenter for Computational

       Science and Engineering.
    d.综合列表
    列表的里面,还可以包含列表;效果是有层次的列表表示方法。要说明的是,因
    浏览器的不同,而会有不同的显示效果,可能不是你想要的。如NCSA Mosaic会把
    第二层的列表加上。如下例:

        
    •  A few New England states:
          

            
      •  Vermont
            
      •  New Hampshire
            

        
    •  One Midwestern state:
          

            
      •  Michigan
            

        

    显示效果如下:
       A few New England states:
          Vermont
          New Hampshire
       One Midwestern state:
          Michigan

    NetScape显示:
     

    图二
    2.5.2预设文字格式(Preformated text)
    HTML在一般无标注的情况下会吃掉过多的空白字符和换行字符,但我们可以用<
    PRE>和</PRE>让空白、换行字符保存下来。在<PRE>.</PRE>之间的文字间隔、换
    行、空白照原始键入的情形,一五一十、忠实地再显现出来。这常用於计算机程
    序的表达,(在Home Page文字描述中,PRE格式不太美观,建议尽量少用)其它标
    注(tags)是允许存在<pre>里,但浏览器并不解释这些标注元素。例如:
        <PRE>
      #!/bin/csh
      cd $SCR
      cfs get mysrc.f:mycfsdir/mysrc.f
      cfs get myinfile:mycfsdir/myinfile
      fc -02 -o mya.out mysrc.f
      mya.out
      cfs save myoutfile:mycfsdir/myoutfile
      rm *
    </PRE>

    显示如下
      #!/bin/csh
      cd $SCR
      cfs get mysrc.f:mycfsdir/mysrc.f
      cfs get myinfile:mycfsdir/myinfile
      fc -02 -o mya.out mysrc.f
      mya.out
      cfs save myoutfile:mycfsdir/myoutfile
      rm *             

    2.5.3换行标记
    <BR>这个标记用来标识一个换行动作。在HTML文件中可以用它来调整行间距。另
    外一个类似的标记元素是<HR>.它是画一条水平线。线的宽度和高度是可调的。这
    个标记对于美化页面是比较有帮助的。它的属性是ALIGN、WIDTH、SIZE分别用于
    调整线的位置和宽度。ALIGN的参数和前面提到的类似有RIGHT、CENTER、LEFT。
    WIDTH可以用百分数表示也可以用绝对值指明。


    2.5.4地址 Address
          这个标注通常用来告知大家本篇文件的作者。经常是一个Email Address 
    放在文件的最後面。范例如下:
      <ADDRESS>
      A Beginner's Guide to HTML / NCSA / [email protected]
      </ADDRESS>

    结果如下:

    A Beginner's Guide to HTML / NCSA / [email protected]
    2.5.5字符格式化标记
          个别的字或句子可以使用不同的字型,这取决於你使用的浏览器。譬如说
    ,<CITE>在你的浏览器中定义为斜体字,那每次你输入<CITE>,字型就会自动变
    为斜体,在NetScape中斜体用的是.黑体用的是,下划线用,打字机字体
    (Curier)用<TT>.

          范例如下:
     Italic
          text puts text in italics (HTML Primer)
          <em>text</em> also italicizes text (only one viewer)
          <cite>text</cite> is used for citations of names of manuals,
          sections, or books (HTML Primer)
          <var>text</var> indicates a variable (filename)
       Bold
          text puts text in bold (Important)
          <strong>text</strong> also emphasizes text (Note:)
       Fixed width font
          <tt>text</tt> puts text in a fixed-width font (1 SU = 1 CPU
          hour)
          <code>text</code> also puts text in a fixed-width font (1 SU
          = 1 CPU hour)
          <samp>text</samp> formats text for samples (-la)
          <kbd>text</kbd> displays the names of keys on the keyboard ( HEL
    P)





    输出结果:
     
    图三

     更多的格式标记:
    <CODE> 用于HTML指令
    <DFN> 定义
    <EN> 强调
    <KBD> 键盘字符
    <SAMP> 某个命令的例子
    <VAR> 程序变量
    <STRONG> 着重强调(黑体)
    2.5.6特殊字符
    在ASCII码中,有三个字符:大於(>)、小於(<)、(&)被当作HTML格式中的控制码
    ,所以要在屏幕上显示出这三个字符,必需配合其它表示法。
    < 在屏幕上会是 <
    > 在屏幕上会是 >
          &amp 在屏幕上会是 &
          尚有其他特殊字符(ISO 8859-1)
            如 &ouml    ->
             &ntilde  -> ±
               &Egrave  -> 《
            这些可以从CERN的列表中得知。

    2.6图形功能(Graphics Function)
    2.6.1显示图形
     NCSA Mosaic、NetScape 可以直接在文件上显示 JPG、BMP或GIF格式的图形。
    每个图形都需要时间来显现而挈长了整个文件显现的时间。同一个图在文件内使
    用多次会比只使用一次情况好些。注意:是NCSA Mosaic 首先采用的标注,
    并非所有的浏览器能解译。表示方法如下:
    <IMG SRC="filename.GIF">
    若未加特别注解,此段的文字会被置於图形的下面。若想要文字置於图形的上面
    ,就得加上align=top的参数:<IMG ALIGN=top SRC="filename.GIF">如果图很大,
    几乎塞满整个窗口,你应该在图形插入前加上<P>的标注。
    IMG元素有两个重要属性:Align 和Alt
    对于客户方不能看image的或把浏览器的自动调入image功能关闭的客户,可通过
    ALT属性显示一些TEXT给客户而不至于屏幕上一片空白或替代的碎图片。Align的
    参数有TOP、MIDDLE、BOTTOM、LEFT和RIGHT.表示图形在屏幕的位置。

    2.6.2调用图形
    当你的图形很大,或是让读者选择性的看图时,你可以做一个联结(link),从一段
    文字或一个小图跳转到另一个新的图形窗口(另一个文件)。不用花费漫长的时间
    在主文件中读图,可以用小的图片或文字,引导读者自己决定要不要看这个图片
    。表示方法如下:

      <A HREF="filename.GIF">link anchor

    图档的格式可以是GIF.TIEF.JPEG.RGB 或HDF格式。
    2.6.3图形处理
    在Home Page里加入图形无疑会使屏幕丰富多彩,一般来说在描好的图形在放到
    Home Page上之前需要进行一些加工,常用的软件有PhotoShop、PaintBrush、Ph
    otoPublish、Liew等。图形的格式是十分丰富的。一般JPE压缩比较好颜色饱满。
    而GIF图有很多特殊属性如透明图形(gif89a)和动态图形(gif87)。一般的小型
    图形处理软件在匿名FTP站上都可以找到。国内的如清华BBS站的FTP及北京大学的
    FTP站、北邮FTP站上都有不少。国外的站点可以通过ARCHI查询得到。

    2.7音频和视频
    在Web中加入音频信息之前要先了解一下音频文件的格式。常见的音频文件的格
    式有AU、WAV、AIFF和SND。音频文件的采集可以是从CD上下载也可以通过软件转
    录。一般音频文件都很大,如改用8位单声道的会大大减小音频文件的大小。在W
    eb中加入音频文件的方法非常简单,只要把HREF指定的URL写上相应的音频文件名
    就可以了。例子如下
    <A HREF=“olivier_h.au”>Test of Sound  
    视频的加入和音频类似,
    exp:
    <A HREF=“TEST.MPEG”>TEST OF VIDEO 
    无论音频信息还是视频信息都要求用户端有相应的应用程序可以播放这些信息。
    这些程序或是嵌入浏览器或是独立存在。现在用java在支持java的浏览器中也可
    以实现音频和视频信息的播放而不需要更多的附加软件。
    2.8表格制作
    Netscap1.1以后的版本加入了对表格的支持。表格的表示如下:
    <TABLE>OBJECT</TABLE>
    定义表格标题:
    <CAPTION...> OBJECTS </CAPTION>
    定义表格列:
    <TR ..> OBJECTS </TR>
    定义表头资料:
    <TH..> OBJECTS </TH>
    定义表格内容:
    <TD..> OBJECTS </TD>
    相关参数如下:


    控制项目 属性关键字 变量
    表格边宽 border n
    格间距 cellspacing n
    格边宽 cellpadding n
    占用列数 colspan n
    占用行数 rowspan n
    标题位置 caption top|bottom
    水平位置 align left|center|right

    例子:
    <HTML>
    <HEAD>
    <TITLE>Netscape 表格范例</TITLE>
    </HEAD>
    <BODY>
    <H3>表格范例</H3>
    <TABLE BORDER=2 CELLSPACING=4 CELLPADDING=10>
    <CAPTION>表格示范</CAPTION>
    <TR>
    <TH ROWSPAN=6>备注</TH>
    <TH COLSPAN=5>数学成绩</TH>
    </TR>
    <TR>
    <TH ROWSPAN=6><A HREF=“mailto:[email protected]”><img alig
    n=top src=“flower.gif”></TH>
    </TR>
    <TR><TD>80</TD><TD>90</TD></TR>
    <TR><TD>85</TD><TD>93</TD></TR>
    </TABLE>
    </BODY>
    </HTML>

    输出结果:

     

    图四

    2.9 Form
    Form 是实现交互功能的主要方式,用户一般通过FORM向CGI提交信息。FORM的语
    法如下:
    <FORM METHOD=“ ...” ACTION=“”>
    <INPUT TYPE=“...” NAME=“...>
    ....
    </FORM>
    FORM的输入域有以下几种:
    SUBMIT:这是每个FROM都有的。在浏览器中这是一个按钮,表示开始提交信息。激
    活服务器端的CGI程序。
    TEXT: 这是文本输入域,用户在通过它输入信息。
    RADIO:类似与Windows中的单选钮
    CHECKBOX:多选纽
    另外还有选择列表:SELECTION语法如下:
    <SELECT NAME=“...”>
    <OPTION> .....
    <OPTION>...
    ....
    </SELECT>
    下面给出一个简单的例子:

    <!DOCTYPE html PUBLIC "-//IETF//DTD HTML 3.0//EN">
    <HTML>
    <HEAD>
    <TITLE>清华大学教工电话查询</TITLE>
    </HEAD>
    <BODY BACKGROUND="../image/softsp02.jpg">
    <PRE>
    <FORM METHOD=POST ACTION="http://166.111.4.3/cgi-bin/super/perl_dh" TA
    RGET="_top">

    姓名简拼:<INPUT NAME="xmpy" TYPE=text SIZE=8> 
    姓名:    <INPUT NAME="xm" TYPE=text SIZE=8>
    电话:    <INPUT NAME="dh" TYPE=text SIZE=8>

    <INPUT NAME="ok" TYPE=submit VALUE=" 确认 ">      <INPUT NAME="cance
    l" TYPE=reset VALUE="重置条件">

    </FORM>
    </PRE>
    </BODY>
    </HTML>
    输出结果如下:
     
    图五

    2.10帧格式
    在HTML3.0中加入了对帧格式的支持,即将屏幕分割成几块,每块对应着一个HT
    ML文件。各帧的连接浏览都是独立运行的。Netscape公司在Navigate2.0以后的版
    本中提了对帧格式的解释。帧格式是通过<FRAMESET>标志元素定义的。其格式如
    下:
    <FRAMESET [ROW|COL]=“...”>
    ...
    <FRAME SRC=“FILENAME” ATTRIBUTE=ARGUMENT>
    ...
    </FRAMESET>

    主要属性 含义 参数值
    scorling 是否允许滚屏 no/yes(default is yes)
    name frame名 自定义
    nosize 是否可改frame大小

    ROW和COL是分别指明如何分割屏幕。引号内可以用百分数表示各帧所占屏幕比例
    ,可以直接明大小(用piex值)。“*”表示均分。<FRAMESET>可以嵌套。SRC属性
    指出各帧所对应的HTML文件。
    由于某些浏览器不支持帧格式所以帧格式中还提供一个<NOFRAME>标志元素。不
    支持帧格式的浏览器可以直接跳转到该标记后开始解释。而忽略前面的帧格式标
    记。
    下面是一个简单的例子(注意不要加<BODY>标记)
    <html>
    <HEAD>
    <TITLE>人员查询</TITLE>
    </HEAD>
    <frameset Rows="80%,20%">
        <frameset Cols="15%,85%">
           <frame src="indextitle.shtml" scrolling=no noresize>
           <frame src="indexcon.shtml" name="file" noresize>
        </frameset>
           <frame src="endhome.html">
    </frameset>
    <noframes>
    </HTML>
    帧的输出结果如下:
     

    图六
    2.11常见问题
    1.某些标注内不能引用其他的不完整的标注,这表示有些结构是无法重叠的。如
    :<H1> This is <A name="foo"> invalid HTML</H1>就是行不通的。
    2.当所联结的图形文件不存在或无法正常显示时Netscape 会用 NCSA log
    o 图形取代。
    2.12较长而完整的范例
    <HTML>
    <BODY>
    <TITLE>A Longer Example</TITLE>
      <H1>A Longer Example</H1>
    <HR>
      This is a simple HTML document. This is the first  paragraph. 
    <P>
      This is the second paragraph, which shows special effects.  This is 
    a
      word in italics.  This is a word in bold.
      Here is an inlined GIF image: <IMG SRC="myimage.gif">.
      <p>

      This is the third paragraph, which demonstrates links.  Here is
      a hypertext link from the word <A HREF="subdir/myfile.html">foo

      to a document called "subdir/myfile.html". (If you
      try to follow this link, you will get an error screen.) 
    <P>

      <H2>A second-level header</H2>
      Here is a section of text that should display as a  fixed-width font

    <P>
      <PRE>
          On the stiff twig up there
          Hunches a wet black rook
          Arranging and rearranging its feathers in the rain ...
      </PRE>

      This is a unordered list with two items: <P>
      

        
    •  cranberries
        
    •  blueberries
        


      This is the end of my example document. <P>

      <address>Me ([email protected])</address>
    </BODY>
    </HTML>
    结果如下:

     
     图七
     第三章 TCP/IP的应用
    3.1 TCP/IP应用一:远程登录(Telnet)
    UNIX是一个多用户系统。多用户系统都有用户帐号概念。用户帐号规定了用户对
    系统的使用权,用户登录进入后就可以访问系统的全部或部分资源。远程登录就
    是指一个远地用户通过TCP/IP进入帐号,访问远地资源。TELNET协议的目的是提
    供一个通用、双向、基于8位字符的通信服务。它是面向终端的处理。是一种网络
    上的虚终端。(NVT)
    远程登录的目的在于访问远地系统的资源。一个用户在登录后系统并不区分是否
    是本地用户。所以用户在本地可以作的任何操作都可在远地进行。
    如用户需要进行编译等操作是就需要TELNET到服务器上进行。微机上的TELNET程
    序很多。一般WINDOWS下的比较好(常见的有NETTERM、TERATERM、EASN等),大多
    支持中文。DOS下的支持中文的TELNET较少。TELNET到主机后使用主机操作系统命
    令。(一般是UNIX命令)
    3.2 TCP/IP应用二:文件传输(FTP)
    FTP是用于TCP/IP网络的文件传输应用。是TCP/IP中使用最广泛的应用之一。FT
    P是基于客户/服务器模型设计的,客户和服务器之间利用TCP建立连接。FTP服务
    器在这里是指提供FTP服务的机器。任何一个UNIX系统都提供FTP Server服务。

    客户端的FTP程序可以按操作方式可以分成两种:命令方式和图形方式。一般DO
    S下的多是命令方式,WIN下的多是图形方式。无论是何种方式使用FTP都要经过连
    接的建立,文件传输连接解除三个步骤。连接的建立是指建立FTP会话连接,在这
    一过程中要求用户输入FTP服务器的地址,用户名和口令。连接建立后就可以在服
    务器和本地机(本地机可以是任意一台有FTP程序的支持TCP/IP的机器)之间传输
    文件了。现在的FTP程序还支持创建目录、删除目录、及删除文件等简单的文件操
    作。FTP允许客户指定存储数据的类型,常见的文件类型有文本和二进制两种。象
    TXT文件,HTML文件等都是文本文件,而可执行程序大多是二进制文件,图形文件
    也是二进制文件。在进行文件传输是一定要注意不要部把二进制文件当成文本文
    件传输。
    DOS下的FTP一般为交互式,连接建立的命令是open,传输命令是get/put,连接结
    束命令是close。其他命令有目录移动命令cd,本地目录移动命令lcd.文件类型指
    定命令binary/ascll.另外还有一些辅助命令。
    WINDOWS下的FTP一般功能较强,可以支持带目录的文件上载和下载。(上载只象
    FTP服务器传输,下载反之)常用的WINDOWS下的FTP程序有WS_FTP32,WS_FTP16,C
    UTEFTP32,CF1614F5,FTP4W12Gd等。基于WINDOWS的FTP程序一般都有较好的集成性
    。文件的拷贝通过双点(doubleclick)的方式实现。
    需要单独提一下的是NCFTP,这是一种可以连续拷贝的FTP程序,这种FTP在需要
    从国外站点或很热的站点取所需要的文件是非常有用。由于线路问题断线是常有
    的事,为了传输一个大文件用NCFTP可以较好的解决这一问题,因为它可以连续传
    输,即可以接着上次的断点传送。
     
    第四章 Web服务器的建立
    4.1服务器程序获取
    4.1.1 Netscape Server 获取
    Netscape Server 是Netscape 公司的WWW服务器软件。它有两个版本,一个是Co
    mmunication,另一个是Commercial.后一个是商业版。一般对教育界可以免费提供
    改程序。获取的方法是向该公司发Email申请免费版本。首先进入Netscape 的Ho
    mepage的Netscape Produte,在进入其Server部分。填好在该项中的申请表格指
    明所需Server的平台及应用的项并提交,该表格会以Email的形式发送给Netscap
    e公司。 Netscape公司的服务器在受到Email后会回一封Email,在该Email中会提
    供一个用户名、口令和URS。之后就可以用FTP下载服务器软件了。(注意:该软件
    是以.tar.gz形式存储的,要用二进制方式传输。该软件的基于Sun平台的软件在国
    内的某些FTP站上也有。如清华大学的水木清华FTP站下可以找到。)
    4,1,2 HTTPD Server 获取
    HTTPD 是NCSA的免费的WWW服务器软件。它可以直接从NCSA的站点上得到。不需要
    用户名和口令。在国内的FTP站上有已经传过来的该软件。版本号是1.5以上。可
    以直接下载到本机。
    4.2 服务器程序安装
    4.2.1 Netscape Server 的安装
    Netscape Server 对于不同的平台安装略有不同。这里讲的是UNIX平台。
    步骤一:解压缩
    因为Netscape Server 的程序是以.tar.gz方式存放的,所以首先要解压缩。解压
    缩分2步,先用gzip 将.tar.gz解为.tar文件。再用tar将.tar文件解包安装。Tar
    是UNIX系统的标准命令。Gzip是一个附加的应用程序,可以从网络上下载其原代
    码编译获得。具体命令如下:
    gzip -d filename.gz
    tar -cvf filename.tar
    步骤二:安装
    Netscape Server For Solaris的安装比较简便,可以有远程和本地安装两种方
    式。因为Netscape Server的安装是通过Netscape 浏览器安装的。所以本地安装
    要求要先安装Netscape基于安装平台的浏览器。远程安装要先安装基于安装平台
    的浏览器。
    当Netscape Server程序解包后会建立安装目录,目录下有一INSTALL的shell程
    序。运行该程序回答DOMANNAME并指明安装方式是本地还是远程。安装程序会告诉
    你一个端口号,指明安装Server的端口。对于远程安装的方式在URL后加上 ’:
    端口号’即可开始安装。对于本地安装会自动调用Netscape进入安装界面。之后
    就可以按提示进行安装。主要是设定Documnet Location,ServerAddress,UserPo
    rt,ServerPort,ServerID,ServerPasswd,UserID这七个参数。(注:安装时最好
    有域名,如在以后要更改需手工更改Server的参数配置文件)
    4.2.2 HTTPD Server 的安装
    NCSA的HTTPD Server和Netscape 的Server 不同,NCSA提供了HTTPD Server的原
    代码。需要用户自己根据不同平台编译生成。
    解压缩
    HTTPD 的Server程序是以.tar.Z的形式存放的。从网上取到本地后需要先进行解
    压缩和解包。命令是uncompress和tar.命令如下:
    uncompress filename
    tar xvf filename
    解包后会自动建立一个httpd的目录。目录下有README介绍了软件的版本信息及
    一些相关站点。
    编译
    运行Makefile,根据Server所在平台选择编译参数。对于一般UNIX平台可选用 
    svr4,其他可选用AIX或Soloris等。
    如HTTP所在目录不是原程序默认目录则需修改http目录下的src目录下的原程序
    。如果只是修改目录则只需修改config.h文件。修改DefaultPath,DocumentLoca
    tion等选项。
    编译程序会自动调用各子目录下的Makefile进行编译。完成后会生成httpd文件
    ,就是httpd的Server。在cgi-bin下会有mail,imagemap等应用程序。如需要各个
    目录下的程序都可独立编译。
    配置
    在完成编译后还需要修改config文件。在conf目录下有*.conf-dist文件,将这
    些文件改名为编译是指定的文件名。并修改这些配置文件的内容和安装机相匹配
    。其中httpd.conf-dist是基本配置文件。access.conf-dist是权限设置文件,可
    以设置用户组用户对目录的访问权,如要进行用户管理需要编译support目录下的
    文件。srm.conf-dist是资源文件定义,mime.types是类型定义文件。除httpd.c
    onf-dist和access.conf-dist外srm.conf-dist和mime.types一般不需调整。
    改完文件名后就可以起Server了。直接运行httpd即可。停止Server只要kill掉
    httpd的进程就可以了。
    4.3参数修改
    4.3.1 Netscape Server参数设置
    Netscape Server的参数设置是通过Netscape浏览器进行修改的,Netscape一般
    会起两个Server,一个是面向用户的一个是面向系统管理员的。他们分别在不同
    的端口。在安装时由用户指定。进入admin界面后用户就可以根据Netscape的详细
    提示进行修改。如设置CGI 目录,权限管理,特殊flag的引入等。在Netscape的A
    dmin中还可以对系统运行进行监控。
    4.3.2 NCSA HTTP SERVER参数设置
    NCSA HTTP SERVER的参数设置是通过修改/user_location/conf下的系统配置文
    件实现的。即前面提到的哪四个.conf文件。绝大部分修改都可以参照文件中的例
    子进行。用户的管理要参照support目录下的管理程序进行。注意:httpd.conf中
    的port选项若在1000以下运行时要有root权限。
    4.4 需安装的其他程序
    4.4.1 Perl安装
    Perl是一种解释执行的程序语言,集C语言和Shell语言特点与一身,有很强的正
    则功能。非常适合于写CGI程序。并且移植性很好。可支持windows,Unix,Aix,So
    loris,Dos等多平台。
    Perl是一个免费软件。国内可以从北大的FTP(202.112.2.12)站上获取,目前版
    本为1.5.2系统向下兼容。Perl 下载到本地后同前面一样需要解压缩、解包。之
    后用Config生成Makefile在编译,编译通过后再用INSTALL安装到指定目录。之后
    在登录文件中加入改路径即可。
    4.4.2 Counter安装
    Counter是一个计数器。可以用来统对主页的访问次数。它的安装和Perl非常相
    似。需要注意的是Counter安装时需要指定机器的域名。Counter是一个CGI程序I
    NSTALL是要安装到Server指定的CGI目录下。Counter也可以从FTP站点上获取。(
    166.111.1.66d或202.112.12.7均有)
     附录JAVA介绍
    一、前言
    『Java』从1995年的暑假开始在计算机业界就受到了高度注意,特别是在Inter
    net和多媒体(Multimedia)相关产品类方面。Java为何有如此这么大的魅力?人作
    如此的比喻:Java在全球资讯网(World Wide Web, WWW)地位就如同电子表格(Sp
    readsheet)与个人计算机(PC)的关系。那Java究竟有那些特色呢?
    Java是一种软件技术
    &#61548; 是一种由美国SUN计算机公司(Sun Microsystems, Inc.)所研究而成的
    语言是一种为Internet发展的计算机语言是一种使网页(Web Page)产生生动活泼
    画面的语言
    &#61548; 是一种使网页(Web Page)由静态(Static)转变为动态(Dynamic)的语言

    &#61548; 是一种语言,用以产生「小应用程序(Applet(s))」
    &#61548; 是一种简化的C++语言
    &#61548; 是一种安全的语言,具有阻绝计算机病毒传输的功能
    &#61548; 是一种将安全性(Security)列为第一优先考虑的语言
    &#61548; 是一种使用者不需花费很多时间学习的语言
    &#61548; 是一种突破用户端机器环境和CPU结构的语言
    &#61548; 是一种「写一次,即可在任何机器上执行(Write OnceRun Anywhere)」
    的语言
    &#61548; 是有史以来,第一套允许使用者将应用程序(Applications)通过Inter
    net从远端的服务器(Remote Server)传输到本地端的机器上(LocalMachine)并执

    &#61548; 是一种应用程序提供者不需要知道使用者的计算机硬件(如:Sun, Int
    el, 或MAC等)与软件(如:SW-UNIX, MAC O/S, Windows, 或NT等)环境的语言(Ke
    stenbaum, 1995)。

    下面将依序地介绍Java,首先是Java的发展历史与Java语言介绍,其次依序是J
    ava Applet和HotJava的简单介绍。

    二、Java FAQ
    下面以问答的方式来说明Java的发展历史与其背景(下列内容整理自
    Java FAQ list and Tutorial和The Java Language: A White Paper,读者若欲
    深入了解,请自行参阅原文):
    &#61548; Java何时开始发展?(When)
    最早大概可追溯至1991年四月份,Sun的绿色计划(Green Project)开始着手于发
    展消费性电子产品(Consumer Electronics),所使用的语言是C、C++、及Oak (为
    Java语言的前身),后因语言本身和市场的问题, 使得消费性电子产品的发展无
    法达到当初预期的目标,再加上网络的兴起, 绿色计划也因此而改变发展的方向
    ,这已是1994年了。
    &#61548; 为何称之为Java?(Why)
    "Java"是美国SUN计算机公司Java发展小组历经无数次的激烈讨论之后才被选择
    出。生动(Liveliness)、动画(Animation)、速度(Speed)、交互性(Interactivi
    ty)为当初选择名字时所欲表达出的特色。"Java"是在无数的建议中脱颖而出的,
    而"Java" 不是由几个单字的首字所组成, 而是从许多程序设计师钟爱的热腾腾
    、香浓咖啡中产生灵感的。
    &#61548; 谁开发了Java?(Who)
    Java是美国SUN计算机公司Java发展小组开发的,早期的成员(绿色工程)是Patr
    ick Naughton, James Gosling, & Mike Sheridan,而现在大家较为熟悉的成员
    是James Gosling。
    &#61548; 在那里开发了Java?(Where)
    也就是问Java的出生地?答案是美国。
    &#61548; Java有何特色或是特点?(What)
    详见本单元开头部份及下一段的说明。
    &#61548; 如何可以找到所需的Java信息?(How to)
    在网路上,您可以连到Sun公司的Java WWW网站,URL是http://java.sun.com/,
    或是http://www.javasoft.com/。在那里几乎可以找到您所需要的所有Java信息
    ,但是语言多少是一个障碍, 至少对某些人而言;没关系,目前国内已有很多个
    网站提供中文Java信息。在清华和中科院的FTP站点上有不少有关资料。想象以后
    应会有更多的站点提供相关信息。
    &#61548; 如何才能看到Java的效果?(How Do I)
    首先您需要有含有Java解释器的浏览器(Browser),例如:Netscpae公司的Nets
    cape Navigator 2.0以上或是Sun公司的HotJava浏览器,对个人计算机使用者而
    言,操作系统需是Windows 95或是Windows NT。

    由上一节的"Java小史"我们知道了Java的发展历史,现进一步地介绍Java语言。

    Java是因为撰写C++语言程序时的困难而研制开的,起先,只是一个消费性电子
    产品大计划中的一部份,C++语言是当初被考虑采用的,但从一开始的编译问题一
    直到最后的一连串问题迫使得放弃C++语言,而有Java语言的产生。Sun是要Java
    成为一个简单(Simple)、面向对象的(Object Oriented)、
    分布式的(Distributed)、解释的(Interpreted)、健壮的(Robust)、安全的(Sec
    ure)、结构中立的(Architecture Neutral)、可移植的(Portable)、高效能的(H
    igh Performance)、多线程的(Multithreaded)、动态的(Dynamic)的程序语言(摘
    译自TheJava Language: A White Paper, 1995)。
    在Sun的Java语言白皮书中明白地说明上述Java语言的特点。

    1. 简单(Simple):容易编写程序,不需要长时间的训练,而能满足现代的需求。
    程序小型亦是简单的一种特性,使得软体能够在小型机器上执行,基本的解释器
    约为40k,若加上基本的程序库,约为215k。
    2. 面向对象的(Object-Oriented):面向对象的设计是一种重心在资料和接口的
    技巧。若以木工为比喻,一个面向对象的木工,他(她)最主要的重点是即将要做
    的木椅子,其次才是所需要的工具;反之;一个以非面向对象的木工,他(她)所
    关心的只是工具。最近的即插即用(Plug and Play)亦是面向对象设计的重点。

    3. 分布式的(Distributed):Java有一个很周全的程序库,且很容易地与HTTP和
    FTP等TCP/IP通讯协定相配合。Java应用程序(Applications)能在网路上开启及连
    结使用物件,就如同透过URLs连结使用一个本地文件系统(Local File System)。

    4. 健壮的(Robust):由Java所编写出的程序能在多种情况下执行而具有其稳定性
    。Java与C/C++最大不同点是Java有一个指针模型(Pointer Model)来排除内存被
    覆盖(Overwriting Memory)和毁损数据(Corrupting Data)的可能性。
    5. 安全的(Secure):Java是被设计用于网络及分布式的环境中,安全性自必是一
    个很重要的考虑。Java拥有数个阶层的互锁(Interlocking)保护措施,能有效地
    防止病毒的侵入和破坏行为的发生。
    6. 结构中立的(Architecture Neutral):一般而言,网络是由很多不同机型的机
    器所组合而成的,CPU和作业系统体系结构均有所不同;因此,如何使一个应用程
    序可以在每一种机器上执行,是一个难题。所幸,Java的编译器产生一种结构中
    立的目标文件格式(Object File Format);这使得编译码得以在很多种处理器中
    执行。
    7. 可移植的(Portable):原始资料型式的大小是被指定的,例如"float"一直是
    表示一个32位元IEEE 754浮点运算数字,因绝大多数的CPU都具有此共同特征。程
    序库属于系统的一部份,它定义了一些可移植的程序接口,Java本身具备有很好
    的可移植性。
    8. 解释的(Interpreted):Java解释器能直接地在任何机器上执行Java位元码(B
    ytecodes),因此在进行程序连结时,时间的节省,这对于缩短程序的开发过程,
    有极大的帮助。
    9. 高效能的(High Performance):Java位元码迅速地能被转换成机器码(Machin
    e Code),从位元码转换到机器码的效能几乎与C与C++没有分别。
    10. 多线程的(Multi threaded):Java语言具有多线程的功能,这对于交互回应
    能力及即时执行行为是有帮助的。
    11. 动态的(Dynamic):Java比C或C++语言更具有动态性,更能适应时刻在变的环
    境,Java不会因程序库的更新,而必须重新编译程序。
    此外,Hank Shiffman (Making Sense of Java)亦针一般对Java的错误看法及观
    念提出他的说明,特在此摘译如下:
    1. "Java是一种编写Web Pages的一种语言,就如同HTML和VRML一样"
    事实上,Java并不像是HTML此一类的描述语言(Description Language),而是一
    种编程语言(Programming Language)。描述语言标明内容和位置,而编程语言描
    述一种产生结果的过程。

    2. "Java语言容易学习和使用,不像C、C++和其它程序语言"
    Java是一种编程语言。Java容易学吗?Java或许是比C或C++容易学,但仍是一种
    编程语言,而不是一种描述语言。

    3. "Java码是可移植的,但C及C++不是"
    Java原代码(Source Code)是比C语言来得可移植一点,差别在于Java的目标码。
    Java码在一种机器上进行编译,而能在所有的机器上执行, 只要那部机器上有J
    ava解释器。
    4. "Java能被拓展而在机器上执行任何事情"
    理论上,Java Applet (Java小应用程序)能做任何事情,如模拟3D VRML模型、播
    放电影、产生音频....等。但事实上,一个小应用程序(Applet)仅能在那一页上
    被执行,而无法在那一页之外执行。同时,Java亦受限于程序库的功能。
    5. "Java是适合于建立大型的应用程序"
    如果Java适合于大型程序,则Java就不适合应用于Web浏览器了。第一个商业性的
    Java Applets (Applix's Java-Based Spreadsheet) 并不是全然使用Java,它只
    使用Java作为用户接口,而所有的处理工作, 是用CGI码。

    6. "Java是解释执行的,Basic是解释执行的,因此Java=Basic"
    虽然Java的确是使用解释器,但事实上,Java则与C或C++等完全编译语言较为相
    近,但与Basic或APL等完全解译语言较不相近。
    7. "Java删除了CGI命令稿(Scripts)和程序的需求"
    Java Applets将会取代部份CGI的用途。在有些情况,Java Applets能够取代一
    些服务器端代码(Server-Side Code),但大多数的情况,基于安全性理由或是效
    能的考虑,Java仍无法全然取代CGI Scripts。
    8. "Netscape's JavaScript是与Java有相关"
    除了名称之外,Java和JavaScript是有一点点相关。JavaScript是一种命令稿语
    言,是可以在HTML页中使用。Java码并未出现在HTML中,而在HTML中通过一个链
    结来链结编译码组。Java和JavaScript之间的关系就如同C语言和C Shell一般。


    本附录参考资料:
    1. The Java Language: A White Paper.
    2. The HotJava Language: A White Paper.
    3. Hank Shiffman, Making Sense of Java.
    4. HotJava、Java与Internet,SUN月刊,1996年1月号,美SUN计算机台湾分公司

    5. Java语言白皮书,SUN月刊,1996年2月号,美SUN计算机台湾分公司。
    6. Kestenbaum, Peter, (1995), Conceptually Understanding JAVA in ten M
    inutes without Getting Lost in Cyberspace, JAVA BOOK, SUN Microsystems
    , Inc., October, 19

    --
    ※ 来源:.网易虚拟社区 club.netease.com.[FROM: 202.116.92.62]

[关闭][返回]