Web开发技术发展史话
讨论Web开发技术的历史,当然要先说说Web的起源。众所周知,Web这个Internet上最热门的应用架构是由TimBerners-Lee发明的。Web的前身是1980年Tim Berners-Lee负责的Enquire(Enquire WithinUpon Everything的简称)项目。1990年11月,第一个Web服务器nxoc01.cern.ch开始运行,TimBerners-Lee在自己编写的图形化Web浏览器"WorldWideWeb"上看到了最早的Web页面。1991年,CERN(EuropeanParticle PhysicsLaboratory)正式发布了Web技术标准。目前,与Web相关的各种技术标准都由著名的W3C组织(World Wide WebConsortium)管理和维护。MsF_\*`x5A
从技术层面看,Web架构的精华有三处:用超文本技术(HTML)实现信息与信息的连接;用统一资源定位技术(URI)实现全球信息的精确定位;用新的应用层协议(HTTP)实现分布式的信息共享。这三个特点无一不与信息的分发、获取和利用有关。其实,TimBerners-Lee早就明确无误地告诉我们:"Web是一个抽象的(假想的)信息空间。"也就是说,作为Internet上的一种应用架构,Web的首要任务就是向人们提供信息和信息服务。
B a[NPn
很可惜,在Web应用日新月异的今天,许多搞技术的人似乎已经忘记了Web架构的设计初衷。他们在自己开发的网站或Web应用中大肆堆砌各种所谓的"先进"技术,但最终用户能够在这些网站或应用中获得的有价值信息却寥寥无几。这个问题绝不像评论者常说的"有路无车"或"信息匮乏"那么简单。一个Web开发者倘若忘记了Web技术的最终目标是提供信息和信息服务,他的愚蠢程度就丝毫不亚于一个在足球场上只知道卖弄技巧,却忘记了射门得分的大牌球星。从这个角度来说,评价一种Web开发技术优劣的标准只有一个,那就是看这种技术能否在最恰当的时间和最恰当的地点,以最恰当的方式,为最需要信息的人提供最恰当的信息服务。l/u8W;QgiGW%u
E+zyI"^ p
[b]客户端技术的萌芽和演进[/b]SSA n.e(D1r
Web是一种典型的分布式应用架构。Web应用中的每一次信息交换都要涉及到客户端和服务端两个层面。因此,Web开发技术大体上也可以被分为客户端技术和服务端技术两大类。我们先来谈谈客户端技术的萌芽和演进过程。sK y_b8^5aWF
Web客户端的主要任务是展现信息内容,而HTML语言则是信息展现的最有效载体之一。作为一种实用的超文本语言,HTML的历史最早可以追溯到上世纪四十年代。1945年,VannevarBush在一篇文章中阐述了文本和文本之间通过超级链接相互关联的思想,并在文中给出了一种能实现信息关联的计算机Memex的设计方案。DougEngelbart等人则在1960年前后,对信息关联技术做了最早的实验。与此同时,TedNelson正式将这种信息关联技术命名为超文本(Hypertext)技术。1969年,IBM的CharlesGoldfarb发明了可用于描述超文本信息的GML(Generalized MarkupLanguage)语言。1978到1986年间,在ANSI等组织的努力下,GML语言进一步发展成为著名的SGML语言标准。当TimBerners-Lee和他的同事们在1989年试图创建一个基于超文本的分布式应用系统时,TimBerners-Lee意识到,SGML是描述超文本信息的一个上佳方案,但美中不足的是,SGML过于复杂,不利于信息的传递和解析。于是,TimBerners-Lee对SGML语言做了大刀阔斧的简化和完善。1990年,第一个图形化的Web浏览器"WorldWideWeb"终于可以使用一种为Web度身定制的语言--HTML来展现超文本信息了。