简单整理一下,如果有不准确的地方,欢迎指正。废话不多说,开干!
按照惯例,在聊前端发展史之前,咱们先来了解一下“什么是前端”。
顾名思义,就是展示在最前面的嘛,就好比是公司的前台,酒吧的前台,一个个漂亮的小姐姐,对吧,很吸引人,那前端,自然就是我们网站的前台,要想我们的网站足够吸引人,首先肯定得漂亮,第一印象嘛,所以前端的第一个发展也是外观的变化,想想20年前的网站,再对比现在的网站,飞起。当网站吸引到人了,才会有人去点,去操作,这个时候体验就很重要了,中看不中用那可不行,于是再往下一层就是体验上的发展。既然这个网站好看又好用,肯定用的人也就越来越多了,性能问题也就出现了,要想满足足够多的人,再往下一层就是性能上的发展了。好了,现在外观好看了,体验和性能也不错了,然后干啥呢,总不能闲着吧,用的人舒服了,那我们开发的人呢,于是,开始往自身考虑,接下来就开始折腾技术了,各种什么什么就出来了,对吧。
相信作为前端开发,应该都体验到了这种飞快的发展,虽然很烦,一年一个花样,但还是值得庆幸的,毕竟越来越优秀了。OK,那我们再从专业的角度去看看,前端这么些年,究竟是如何发展的...
1990年,第一个浏览器诞生
英国著名计算机科学家Tim Berners-Lee发明了第一个网页浏览器WorldWideWeb(我们熟悉的“www”就是它的简称)。当时的计算机还不像现在这样有着丰富多彩的界面,所谓的网页浏览器也只能显示一些简单的字符,功能也仅仅用于共享文本信息和各种公司名片。当时第一个互联网页面是CERN(核子研究组织)的网站,而且一开始也只供组织内部使用。那台网页服务器就在Berners-Lee的办公室——大名鼎鼎的核子研究组织404号房间。网络上流传最广的说法就是:当时如果你要访问网页,必须向这个房间提交申请,如果404房间的工作人员找不到网页,就会提示你[404 not found],而时至今日,为了纪念404房间,一直沿用至今。
1991年,HTML诞生
由 Web 之父 Tim Berners-Lee 亲手设计的图形化浏览器还包含一个所见即所得 HTML 编辑器,为了避免同 WWW 混淆,这个浏览器后来改名为 Nexus.
1993年,Mosaic和cookie诞生
Mosaic这款浏览器将 Web 带向了大众。诸如 IE, Firefox 一类的当代浏览器仍然在延用 Mosaic 的图形化操作界面思想。
同年,我也出生了,哈哈。
1994年,第一款商业浏览器Navigator,PHP诞生,W3C组织成立
网景公司成立,发布了第一款商业浏览器Navigator。随后,微软也发布了其IE浏览器,并利用Windows操作系统捆绑销售,网景为了在商业上保持优势,不断创新浏览器,期望在静态HTML文档中,能加入一些动态效果。因此,网景创建了Javascript脚本语言,并大获成功。随后,微软也在IE浏览器中推出JScript语言。为了对两个主流的浏览器脚本语言标准化。
1995年,IE浏览器发布
微软针对 Netscape 发布了他们自己的浏览器,IE。
1996年,Opera浏览器发布
Telenor 是挪威最大的通讯公司,他们推出了 Opera,并在两年后进军移动市场,推出 Opera 的移动版。
1997年,ECMAScript的新脚本语言标准
1997年由网景、Sun、微软、Borland等公司组织及个人组成的技术委员会在ECMA(欧洲计算机制造商协会)确定定义了一种名叫ECMAScript的新脚本语言标准,规范名为ECMA-262。JavaScript成为了ECMAScript的实现之一。完整的JavaScript实现应该包含三个部分,即ECMAScript(语言核心)、DOM(文档对象模型)、BOM(浏览器对象模型)。
1998年,Mozilla 项目成立,Netscape 浏览器开源
Netscape 成立 Mozilla 开源项目,开发下一代浏览器,后来证明,使用原有代码开发新东西是一种负担,接着他们着手重新开发。
1999年,第四代HTML标准
1999年W3C发布第四代HTML标准,同年微软推出用于异步数据传输的ActiveX,随即各大浏览器厂商模仿实现了XMLHttpRequest。这标识着Ajax的诞生,但是Ajax这个词是在六年后问世的,特别是在谷歌使用Ajax技术打造了Gmail和谷歌地图之后,Ajax获得了巨大的关注。Ajax是Web网页迈向Web应用的关键技术,它标识着Web2.0时代的到来。
2000年,XHTML1.0发布
W3C 采用了一个大胆的计划,把 XML 引入 HTML,XHTML1.0 作为 W3C 推荐标准发布
2001年,IE6发布
IE6当时世界上最先进的浏览器。同年,W3C推出了CSS3.0标准。
2002年,ASP.NET发布
ASP.NET发布,用于替代 ASP。同年,IE浏览器开始主导市场。
2003年,Safari浏览器发布
苹果进入了浏览器市场,推出自己的 Webkit 引擎,该引擎非常优秀,后来被包括 Google, Nokia 之类的厂商用于手机浏览器。
2006年,jquery出现
jQuery设计的宗旨是“write Less,Do More”,即倡导写更少的代码,做更多的事情。
2008年,chromeV8引擎发布
因为JavaScript和AJAX技术的出现,赋能前端的工作越来越多,当时的浏览器已然不能承载发展,Google携Chrome浏览器推出了JIT即时编译技术+JavaScript, V8引擎使页面加载越来越快,性能也大幅提升。打败IE, 夺得浏览器大战的胜利。
2009年,augular发布,nodejs出现,npm包管理工具诞生
augularJS由Misko Hevery 等人创建,是一款构建用户界面的前端框架,后被Google收购。
Chrome V8 发布后,Ryan Dahl开始对它进行分析,它看起来迷人而且干净,而且很快,突然之间Ryan Dahl想到:JavaScript 是单线程的,而且已经实现了非阻塞 ,但在 web 浏览器中人们使用 AJAX 请求和事件时已经实现了非阻塞请求,这有点儿讽刺,Ryan Dahl认为JavaScript 结合异步 IO,再结合一些 HTTP服务器事件,将会变成一件非常酷的事情所以在接下来的四年里一直在做这项工作,2009年的2月,按新的想法他提交了项目的第一行代码,这个项目的名字最终被定名为“node”。
2011年,React发布
Facebook认为MVC无法满足他们的扩展需求,由于他们非常巨大的代码库和庞大的组织,使得MVC很快变得复杂,每当需要添加一项新功能或者特性时,系统的复杂就成级数的增长,致使代码变得脆弱而不可预测,结果导致他们的MVC正在土崩瓦解。认为MVC不适合大规模的应用。当系统中有很多模型和相应的视图时,其复杂度就会迅速扩大,非常难以理解和调试,特别是模型和视图可能存在双向数据流动。于是,开发出了React。
2012年,Webpack发布,TypeScript初版发布
德国人Tobias(写java的),从事将java转为js的研究(GWT),里面有个特性叫code splitting,code splitting就是 Webpack 现在提供的主要功能,同年微软发布了 TypeScript 第一个版本(0.8)
2014年,Vue发布
其作者为中国人——尤雨溪,也是新人最容易入手的框架之一,不同于React和Angular,其中文文档也便于大家阅读和学习。
2015年,ES6发布
这是JavaScript规范一次大的变革,异步Promise、let、const、箭头函数等等语法编写Javascript代码更加方便。TC39决定之后ES规范1年1更。
16年至今,React,Vue,Angular三足鼎立,好像也没有什么革命性的大事件了,基本都是各种库的发布,版本的迭代了。
写得匆忙,不免有些遗漏,欢迎各位及时补充,感谢阅读!