摘要: 自互联网行业发展以来, web 前端不断发展变化着. 在前人的基础上, 后人有幸能够站在前人的肩膀上行走. 前端的发展变化不仅是继承式的迭代, 同时也是不断的变革和创造.
一, 前端到底是个什么?
简单点说, 浏览器呈现出来的页面, 给用户看的, 操作的就是前端(客户端); 你看不到的, 类似一些游戏数据, 应用数据之类的就是后端(服务端).
那么再简单点就可以说, 前端指的就是浏览器端, 后端指的就是为浏览器提供服务和数据的服务器端.
这是比较准确的描述, 如果往大了讲, 你所有看到的一切, 网页, 移动端网页, 小程序, 甚至某些 App, 都是属于前端的范畴.
二, 前端的起源
世界上第一台计算机
背景: 二战时期, 美国军方为了计算炮弹弹道, 让一些科学家造出了这世界上的第一台计算机 "ENIAC".
1946 年 2 月 14 日, 世界上第一台计算机 "ENIAC"(埃尼阿克)在美国宾夕法尼亚大学诞生. 这是一群科研人员共同努力的成果, 但是起到最关键作用的是其数学家冯 . 诺依曼的设计思想, 所以其被称为 "现代计算机之父".
意义: 标志着电脑时代的开始.
想不到吧!!This Big Boy 就是我们现在电脑的祖先!!↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓
(图源来自: 百度图片)
互联网的前身
背景: 二战时期, 美国军方为了防止部分网络被摧毁后失去通信.
1969 年, 美国国防部的高级研究计划局 (ARPA) 建立了军用网叫 "阿帕网"(ARPnet). 阿帕网就是互联网的前身.
1983 年, APRA 和美国国防部通信局研制了用于异构网络 (本文不做讲解) 的 TCP/IP 协议, 后该协议在社会上流行起来, 因此诞生了真正的 Internet.
Internet 和计算机的诞生, 为前端技术的开始奠定了基础.
前端发展将近 20 年, 也算是一个比较漫长的发展过程, 大致可以分为以下几个阶段:
三, 洪荒时代(1990~1995 年)
这个时代最重大的几件事有: WWW 的诞生(1990), 浏览器的诞生(1992),W3C 理事会成立(1994),JavaScript 的诞生(1995);
1990 年, WWW(万维网)诞生. 全称: World Wide Web.
1992 年, NCSA 研发了第一个浏览器: Mosaic, 可以窗口浏览网页. 随后新一代浏览器: Netscape Navigator(网景浏览器), 于 1994 年诞生; 隶属于 Netscape(网景)公司, 下文统称为网景公司.
1994 年, Tim Berners - Lee 创建了 W3C 理事会. 蒂姆 . 伯纳斯 . 李被称为 "万维网之父", 南安普顿大学, 麻省理工大学教授. W3C 理事会主要负责 html 的发展路径, 其宗旨是通过促进通用协议的发展; 成员机构: 美国麻省理工大学, 欧洲数学与信息学研究联盟, 日本庆应大学, 中国北京航空航天大学.
1995 年, 待这一切就绪后, JavaScript 应运而生! 发明者是 Brendan Eich(布兰登 . 艾奇).
JavaScript 主要语言特征: 借鉴了 C 语言的基本语法; 借鉴了 Java 语言的数据类型和内存管理; 借鉴了 Scheme 语言; 借鉴了 Self 语言, 使用基于原型的继承机制;
(1994 年, Netscape Navigator 网景浏览器截图, 图源来自百度图片)
四, 铁器时代(1995~2005 年)
这个时期的浏览器五花八门, 互相竞争激烈. IE 浏览器, 网景浏览器, 火狐浏览器, 谷歌浏览器是这个时期的主角!
虽然当时已经有了比较统一的 ECMA(JavaScript 规范文档)标准和 W3C(HTML,CSS 规范文档), 但是浏览器先于标准在市场上流行, 成为了事实标准. 所以这就导致了我们现在在开发项目的时候还要去处理一些浏览器兼容性问题(大家最遇到的 IE 兼容问题).
随着 1998 年, Ajax 的出现, 前端开发从 Web1.0 升级到了 Web2.0, 从纯内容的静态页面, 发展到了动态网页, 富交互, 前端数据处理的新时期. 在这一时期, 比较知名的两个富交互动态的浏览器产品是: Gmail(2004 年),Google 地图(2005 年).
由于动态交互, 数据交互的需求增多, 还衍生出了 jQuery(2006 年)这种跨浏览器的 JS 工具库, 主要用于 DOM 操作, 数据交互.
2005~2009 年的前端发展历程就涉及到小作者的知识盲区啦~~ 还请有意的大佬们补充, 给小白们科普科普嘻嘻!
五, jQuery 时代(2009~2016 年)
2006 年, jQuery 发布, 它当时的竞争对手很多, 也很激烈基本持平. 直到 2009 年, Sizzle 选择器引擎研发成功, jQuery 才取得了压倒性的优势.
这个时期, 前端面对的主要是浏览器的兼容性问题, 而 jQuery 在处理 DOM 兼容性问题上有这大量的解决方案.
jQuery 的流行间接带来以下的发展:
(1)促使人们对 CSS1~CSS3 选择器的学习
(2)促进了浏览器原生选择器引擎 document.querySelectorAll,Element.matches 的诞生
(3)提高人们对 domReady 的认识
(4)促进了 Promise 与 requestAnimateFrame 的诞生
(5)降低前端门槛, 前端工程师的队伍越来越壮大.
这个时期涌现了大量 jQuery-like 的库, 其中最著名的是 Zepto.JS.Zepto 的出现也标志着我们进入移动互联网时代.
jQuery 时代以 RequireJS 的诞生为起点, 以 RN 的出现结束. jQuery 的出现让前端开发更加轻松, 假如工程师想实现一个功能, 现搜索出一个 jQuery 插件来实现.
下一篇将为大家继续带来三大框架时代的发展史, 还有前端现状以及未来的发展趋势哈~ 敬请期待啦!
点击关注, 第一时间了解华为云新鲜技术~
来源: http://www.jianshu.com/p/1ee72a34647f