阅读 438

前端简史(一)

image.png

0、js之父

网景

背景介绍

历史上第一个比较成熟的网络浏览器,就是1994年,网景公司(Netscape)发布的Navigator浏览器0.9版,虽然这个版本的浏览器只能用来浏览,仍然轰动一时。所以网景公司最先确定要开发一个网页脚本语言,至少让浏览器有一定与用户互动的能力。

网景公司当时有两个选择:

到底采用哪一个选择,网景公司内部争执不下,管理层一时难以下定决心。

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

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

总之,当时的形势就是,网景公司的整个管理层,都是Java语言的信徒,Sun公司完全介入网页脚本语言的决策。

传奇登场

1995年4月,网景公司雇佣了程序员 Brendan Eich(布兰登·艾奇)

1995年5月,网景公司做出决策,未来的网页脚本语言必须看上去与Java足够相似,但是比Java简单,使得非专业的网页作者也能很快上手。 指定当时刚入职一个月的34岁的系统程序员Brendan Eich为这种简化版Java语言的设计师。

可是Brendan Eich的主要方向和兴趣是函数式编程,网景公司最初招聘他的目的,是研究将Scheme语言作为网页脚本语言的可能性,他对面向对象编程的Java一点兴趣也没有。

为了应付公司安排的任务,他只用10天时间就设计出了这种网页脚本语言,并起名叫做Mocha

1995年9月,改为 LiveScript

12月,网景 公司与 Sun 公司(Java 语言的发明者和所有者)达成协议,后者允许将这种语言叫做 JavaScript

所以说,JavaJavaScript的关系就像老婆老婆饼的关系差不多

JavaScript的设计思路:

借鉴C语言的基本语法;
借鉴Java语言的数据类型和内存管理;
借鉴Scheme语言,将函数提升到第一等公民(first class)的地位;
借鉴Self语言,使用基于原型(prototype)的继承机制;
由Brendan Eich(函数式编程)与网景公司(面向对象编程)共同决定,Javascript语言风格=(简化的)函数式编程+(简化的)面向对象编程。

作为设计者,Brendan Eich一点也不喜欢自己的这个把Java作为Javascript设计原型的产品。

与其说我爱Javascript,不如说我恨它。它是C语言和Self语言一夜情的产物。十八世纪英国文学家约翰逊博士说得好:‘它的优秀之处并非原创,它的原创之处并不优秀。’(the part that is good is not original, and the part that is original is not good.)

Brendan Eich

1961年~现今(头发依旧“茂密”)

1995年进入网景公司,为其浏览器开发了JS功能

1998年协助成立Mozilla.org,担任首席架构师

网景死亡后,他成立了Mozilla基金会,Firefox就是这个基金会维护的(后面会介绍到)

2014年晋升为Mozilla的 CEO,十天后,被赶下台原因是他曾捐助过反同性恋的法案

2015年成立 Brave 公司,开发保护用户隐私的浏览器

启示:
可以看到,一个牛X的程序员从来都不会只学一门语言,而且不怕被辞退,总能找到事做。创业也简单,年龄也不是限制。所以,该怎么做知道了吧。

1、浏览器

发表时间名称发表人/组织地点现状
1991年www(nexus)Tim Berners-Lee瑞士CERN消失
1993年Mosaic伊利诺大学的NCSA组织美国被收购
1994年网景 NetscapeMarc Andreessen美国消失
1995年IE微软美国转战Microsoft Edge
1995年OperaTelenor公司挪威现存
2002年firefoxMozilla组织美国现存
2003年safari苹果公司美国现存
2008年chrome谷歌公司美国现存

相关故事

互联网奠基人蒂姆·伯纳斯·李(Tim Berners-Lee)

Mosaic老电影中出现的浏览器就是他了

Netscape(网景)开始有內味了,兄弟们

IE(其实我想先夸夸他)

1995年8月16日,微软发布IE1

1995年11月22日,微软发布IE2

1996年8月13日,微软IE3发布

1996年8月,微软模仿 JavaScript 开发了一种相近的语言,取名为JScript(不讲武德,来骗来偷袭),首先内置于IE 3.0。Netscape 公司面临丧失浏览器脚本语言的主导权的局面。

于是,网景 公司在1996年11月决定将 JavaScript 提交给国际标准化组织 ECMA (European Computer Manufacturers Association), 希望 JavaScript 能够成为国际标准,以此抵抗微软。1997年7月,ECMA 组织发布262号标准文件(ECMA-262)的第一版,规定了浏览器脚本语言的标准,并将这种语言称为 ECMAScript。初学者一开始学习 JavaScript,其实就是在学 ECMAScript3.0 版的语法。

扩展知识:Javascript推出一年半之后,国际标准就问世了。设计缺陷还没有充分暴露就成了标准。相比之下,C语言问世将近20年之后,国际标准才颁布。

互联网大厂的垄断

在微软推出IE 4.0之后,性能和体验就非常接近网景公司的浏览器了。在用户体验相当的情况下,微软将Windows操作系统和IE浏览器捆绑销售的做法展示出了巨大威力,即便后来网景也采用免费策略,但已为时已晚。大部分用户自己使用Windows自带的IE浏览器,而不会去专门下载网景的浏览器。网景公司就被微软用这种非常规的竞争手段击败了。

微软的懈怠

时间来到了2001年IE6随着Windows XP一起发布,IE6的惊人表现让其在2004年直接做到全球市场占用率80%以上,由于IE6的巨大成功,微软觉得再花费精力不值得(格局小了),而且没有竞争对手,所以直接解散了IE6开发团队。

Firefox乘此机会打算涅槃重生,重新打败IE

同时Firefox的出现让微软重新组建IE团队,但不是同一队人,造成IE7、8一直问题不断

但同时有个人正在苟发育

2004年,谷歌雇用了一些Firefox和IE的开发者

2008年,Chrome终于发布,迅速拿下全球1%份额

2011年,Chrome份额超过Firefox

2016年,Chrome全球份额62%

看,谷歌就非常睿智,找的都是间接或直接被微软开除的人。

启发:弱小和无知不是生存的障碍,傲慢才是 -- 《三体》

IE笑话,永不过时

Opera来自北欧的小巧与精致感

Opera浏览器的第一个公开发行版本里,Opera就实现了在`一个窗口里同时打开多个文

——这就是普遍流行的“标签式浏览”`的前身。

2001年Opera首创了“鼠标手势”,极大地改变了许多人网上冲浪的方式。

safari 是🍎设备上最好用的浏览器(抛开移动端兼容不谈的话)

safari也有Windows版本

在2008年3月18日推出正式版,现已支持Windows7

在2012年7月26日,Windows平台的Safari已经放弃开发。

2012年12月3日,苹果Safari仍领跑全球移动浏览器市场,份额达到了61.5%,谷歌的Chrome在整个移动市场的份额为1.14%。

19年移动端市场份Chrome占34.48%,Safari占7.08%。

firefox 最后一个带有纯正开源血统的浏览器

改名,改名,还是TMD改名

firefox最初名字为“Phoenix”(Phoenix首个版本0.1于2002年9月23日发布),但因为和凤凰科技(Phoenix Technologies)的名称冲突,于是于2003年4月14日改为“Firebird”。后来,这个新名称又与另一个开源的数据库系统Firebird发生了冲突 ,Firebird的开发社区要求以全称“Mozilla Firebird”来标识这个项目或重命名,避免混淆。

2004年2月9日,Mozilla Firebird决定改称Mozilla Firefox,简称Firefox 。Firefox在英文俗语里指的是“红熊猫”,但开发小组却采用将“Fire”和“fox”分开来直译蕴意,把吉祥物及官方图标都设计为火红的小狐狸。

logo历史(能看出来设计逐渐趋向于扁平化的趋势)

造反有理

Google Chrome 永远滴神!!!

安全、高效、速度快、兼容丰富强大的插件、多平台同步、自带谷歌网页翻译、优点太多已经不用再赘述了

当然这么强大是有代价的

IE笑话,永不过时,但Chrome笑话也是传世经典

截至2020年3月,Google Chrome在全球桌面浏览器中有91.98%的占有率

2、JavaScript的兴起与爆发

兴起于

杀手级应用Gmail

2004年愚人节,谷歌发布了 Gmail在线网页,当时的人们认为网页只能用来看新闻和图片,而Gmail的发布让用户和开发者眼前一亮

2005年,Jesse James Garrett(杰西·詹姆斯·加勒特)将谷歌用到的技术命名为AJAX,从此,前端技术正式出现,在此之前的网页开发都是由后端和设计师完成的(促进了前后端的分离的开始)

其实是在这一年谷歌发布了测试版本的谷歌地图,并在这个项目大量运用让网页透过 JavascriptXML 格式来回传数据、达到异步更新网页内容的技术。

这在当时是一个跨时代的壮举,让用户终于有机会看到不需要刷新整个页面就可以更新状态的地图,我们也看到了异步操作是如何给网站用户带来良好体验的。

2006年,jQuery发布,是目前最长寿的JS库,后来的十年jQuery大发异彩,直到IE不行了,jQuery才稍微没有那么火

爆发于

Chrome的JS引擎V8(V8快如闪电)

2009年,Ryan Dahl(瑞安·达尔)基于V8创建了Node.js

2010 年,lsaac(艾萨克)基于Node.js 写出了npm

当然时至今日,JavaScript已经可以做到太多东西了,前端工程师可以愉快的编写后端应用了,与Javascript相关的技术也井喷式爆发: gulp、grunt、veoman、 requireis、webpackAngularReactVue

😋

前端简史内容是自己整理的一系列历史知识,也是基于兴趣吧,说是兴趣但是收集资料的过程中同时也解释了很多问题。
以上整理的是前端的部分发展史,关于我们的故事还远没有结束,敬请期待下一期,前端简史(二)。

参考文献

浏览器历史和发展趋势浅析
前端科普系列(1):前端简史
转行学前端的第 22 天 : 了解 JavaScript 历史
JavaScript是历史的选择
布兰登·艾奇 百度百科
微软是怎也击败网景垄断浏览器的
网景 百度百科
firefox 百度百科


南京三百云信息科技有限公司(车300)成立于2014年3月27日,是一家扎根于南京的移动互联网企业,目前坐落于南京、北京。经过7年积累,累计估值次数已达52亿次,获得了国内外多家优质投资机构青睐如红杉资本、上汽产业基金等。
三百云是国内优秀的以人工智能为依托、以汽车交易定价和汽车金融风控的标准化为核心产品的独立第三方的汽车交易与金融SaaS服务提供商。

欢迎加入三百云,一起见证汽车行业蓬勃发展,期待与您携手同行!
Java开发、Java实习、PHP实习、测试、测开、产品经理、大数据、算法实习,热招中...
官网:www.sanbaiyun.com/www.che300.com/
投递简历:hr@che300.com,请注明来自掘金😁

文章分类
阅读