浏览器的历史和js的诞生

553 阅读9分钟

说明:本文内容从百度百科摘取整理而来

1990年 服务器诞生

蒂姆·伯纳斯·李 (Tim Berners-Lee) 万维网(WorldWideWeb)的发明者,他是第一个使用超文本来分享资讯的人。

超文本是一种用户接口范式,用以显示文本及与文本相关的内容。现时超文本普遍以电子文档方式存在,其中的文字包含有可以链接到其他字段或者文档的超文本链接,允许从当前阅读位置直接切换到超文本链接所指向的文字。

1980年代后期超文本技术已经出现,当时还有国际间的超文本学术会议,每次都有上百篇的有关超文本的论文问世,但没有人能想到把超文本技术应用到计算机网络上来:超文本只是一种新型的文本而已。

1990年,蒂姆在当时的NeXTStep网络系统上开发出了世界上第一个Web服务器和第一个Web客户机。虽然这个Web服务器简陋得只能说是CERN的电话号码簿,它只是允许用户进入主机以查询每个研究人员的电话号码,但它实实在在是一个所见即所得的超文本浏览/编辑器。蒂姆为他的发明正式定名为World Wide Web,即我们熟悉的WWW。 此时的万维网只有文本,没有图像、声音、也没有色彩和类似于Windows的界面

CERN:欧洲核子研究组织,是世界上最大型的粒子物理学实验室,也是万维网的发源地

1991年 第一个网站建立

蒂姆·伯纳斯·李 建立的第一个网站(也是世界上第一个网站)是http://info. cern. ch/,它于1991年8月6日上网,它解释了万维网是什么,如何使用网页浏览器和如何建立一个网页服务器等等。蒂姆·伯纳斯·李后来在这个网站里列举了其它网站,因此它也是世界上第一个万维网目录。

1993年 Mosaic浏览器开发

马克·安德森(被誉为因特网的点火人)他在美国伊利诺斯大学学习时,在学校里的国家超级计算中心(NCSA)工作,使他有机会熟悉因特网。当时因特网只用于学术用途,虽然信息资源非常丰富,但使用起来很复杂。1992年下半年安德森已经熟悉因特网,他觉得在万维网上加图形更有意思。

1993年马克·安德森和吉姆·克拉克(SGI公司的创始人)一起苦干6星期,开发出UNIX版的Mosaic浏览器。可以显示图片,是真正意义上的图形化浏览器。

因特网之所以在近几年火爆起来,是因为出现了万维网和浏览器软件。最初开发浏览器软件的是当时还没有毕业的大学生马克·安德森(Marc Andreessen)。因此马克·安德森被誉为因特网的点火人

1994年 Mosaic通信公司(网景)成立

1994年吉姆·克拉克成立Mosaic通信公司,安德森担任技术副总裁。他领着一班人全面重写Mosaic的代码。在重写中安德森出了许多好点子。这次开发同原先开发不一样。那时还是学生,只是为了兴趣而并不关心质量,而现在为了商业目的,要把性能和稳定性放在优先考虑的地位。

因为原先的Mosaic是安德森用大学的资金和设备开发的,著作权属于大学,而且spy glass公司从大学那里购买了使用许可。 Mosaic的工程师开足马力工作,Mac、PC、UNIX等所有平台的浏览器都在同时开发。这时候公司的名字被改为 “网景”(Netscape),浏览器的名字也被改为Navigator(领航员)。Navigator没有一行代码来自Mosaic。

1994年10月13日Navigator在网上发布,这是世界上第一款比较成熟的网络浏览器,不到1小时就下载了数以千计的拷贝。Navigator比Mosaic快10倍,而且增加了许多特性,提高了安全保密性。

但是这是一款名副其实的浏览器--只能浏览页面,浏览器无法与用户互动。 比如你登录一个网站输入完用户名点击提交的时候。浏览器并不知道你是否输入了,也无法判断。只能传给服务器去判断。

网景急于解决浏览器与用户交互这个问题。当时解决这个问题有两个办法,一个是采用现有的语言,比如Perl、Python、Tcl、Scheme等等,允许它们直接嵌入网页。另一个是发明一种全新的语言。这两个选择各有利弊。第一个选择,有利于充分利用现有代码和程序员资源,推广起来比较容易;第二个选择,有利于开发出完全适用的语言,实现起来比较容易。到底采用哪一个选择,网景公司内部争执不下,管理层一时难以下定决心。

1995年 Javascript被设计出来

1995年Sun公司将Oak语言改名为Java,正式向市场推出。Sun公司大肆宣传,许诺这种语言可以"一次编写,到处运行"(Write Once, Run Anywhere),它看上去很可能成为未来的主宰。

网景公司动了心,决定与Sun公司结成联盟。它不仅允许Java程序以applet(小程序)的形式,直接在浏览器中运行;甚至还考虑直接将Java作为脚本语言嵌入网页,只是因为这样会使HTML网页过于复杂,后来才不得不放弃。

此时,34岁的系统程序员布兰登·艾奇(Brendan Eich) 登场了。1995年4月,网景公司录用了他。

Brendan Eich的主要方向和兴趣是函数式编程,网景公司招聘他的目的,是研究将Scheme语言作为网页脚本语言的可能性。Brendan Eich进入Netscape公司后,设计出了新的脚本语言,并命名为LiveScript,只能在Netscape Navigator上使用。

1995年5月,网景公司做出决策,未来的网页脚本语言必须"看上去与Java足够相似",但是比Java简单,使得非专业的网页作者也能很快上手。 Brendan Eich被指定为这种"简化版Java语言"的设计师。

但是,他对Java一点兴趣也没有。为了应付公司安排的任务,他只用10天时间就把Javascript设计出来了。(因此LiveScript后续改名为Javascript)

由于设计时间太短,语言的一些细节考虑得不够严谨,导致后来很长一段时间,Javascript写出来的程序混乱不堪。总的来说,他的设计思路是这样的:

  1. 借鉴C语言的基本语法;
  2. 借鉴Java语言的数据类型和内存管理;
  3. 借鉴Scheme语言,将函数提升到"第一等公民"(first class)的地位;
  4. 借鉴Self语言,使用基于原型(prototype)的继承机制。

所以,Javascript语言实际上是两种语言风格的混合产物----(简化的)函数式编程+(简化的)面向对象编程。 这是由Brendan Eich(函数式编程)与网景公司(面向对象编程)共同决定的。

如果不是公司的决策,Brendan Eich绝不可能把Java作为Javascript设计的原型。作为设计者,他一点也不喜欢自己的这个作品:"与其说我爱Javascript,不如说我恨它。它是C语言和Self语言一夜情的产物。"

1996年 IE发布,同年还发布了IE3和JScript

1996年,微软通过给予季度费用和部分收入从Spyglass中取得了Spyglass Mosaic的授权后,发布了Internet Explorer,IE1.0就是由Mosaic开发出来的,掀起了软件巨头微软和网景之间的浏览器大战。

Mosaic是安德森用大学的资金和设备开发的,著作权属于大学,而且spyglass公司从大学那里购买了使用许可。即Spyglass Mosaic 使用了马克·安德森在NCSA开发的NCSAMosaic少量的源代码

1996年8月Internet Explorer 3.0和JScript发布。微软终于在浏览器技术上追上了 Netscape。逐渐的,微软通过在每个 Windows 系统中预装 IE 浏览器来抢夺市场份额。

2001年 IE6和Windows XP诞生

2001年8月27日,微软发布IE6供Windows 98/SE、Windows NT4.0、Windows 2000和Windows ME用户升级安装。10月25日,Windows XP正式上市,集成IE6(版本号6.0.2600.0000)。IE6包括增强的DHTML,以及对CSS 1、DOM 1和SMIL 2.0等的部分支持,MSXML也提升到了3.0版本。其它次要的功能还包括了新版本的IEAK、音乐工具列、Windows Messenger、错误报告、图片大小自动调整、P3P和与Windows XP有异曲同工之妙的Luna界面(仅在使用Windows XP会有),同时也删除了XBM的图片格式支持。由于IE6的种种新特性,并且网页开发技术也大大提高。当时的网页开始多样化、丰富化。

IE6 的诞生给javasciprt带来的新的生命,就是JS引擎。IE6从渲染引擎中将javascript这部分剥离出来,单独生成了JS引擎。

2008年 chrome上线

Google Chrome是由Google开发的一款设计简单、高效的Web浏览工具。Chrome浏览器基于开源引擎WebKit、Blink,其中包含谷歌Gears

Google Chrome的特点是简洁、快速。GoogleChrome支持多标签浏览,每个标签页面都在独立的“沙箱”内运行,在提高安全性的同时,一个标签页面的崩溃也不会导致其他标签页面被关闭。此外,Google Chrome基于更强大的JavaScript V8引擎,这是当前Web浏览器所无法实现的。

v8的特点:

  1. 直接翻译机器码,故速度最快
  2. 独立于浏览器运行(node.js就用了chrome V8引擎来构建javaScript运行环境)