时间线顺序:
-
PHP/JAVA/C# 程序员负责页面开发(table标签布局)
政府网站,特别丑,左边一栏上面一栏右边一栏
-
后台 + 美工
美工负责用PS P图,写出DIV+CSS的页面,用绝对定位、float布局
现在很多小城市还是这种模式 -
2004年愚人节, Gmail发布,AJAX的出现标志着浏览器可以做桌面程序了
AJAX是微软在IE5的时候发明的,可以用这个对象发请求。微软发明了他,谷歌弘扬了他。标志着前端的诞生
-
后台学JS + 美工写HTML/CSS
为了讨好JAVA程序员,命名为JavaScript,模仿JAVA的面向对象
-
用户体验大爆发
乔布斯兴起了用户体验风潮,以前的页面已经无法满足用户体验了。iphone设计的拟物化,所有logo都变得很真实。页面应该是有动画且美丽的。以前页面是点一下就刷新的,完全没有体验。需要在页面加更多更复杂的css和更复杂的JS,比如做复杂的表单提交等。一部分后端程序员和美工就往这块转移
-
后台 + 设计师 + 前端
后台专门写后台, 设计师专门做图, 前端负责html+css+js
-
前后端分离
原因:变量是藏在html页面里的,前端需要去页面里取。那个时候的html还是放在后端的svn代码里的。这样搞的前端要去拿后端代码的权限。
前后端分离后,代码分离:html放在了前端svn里,数据分离:利用ajax拿数据,人员分离:将开发分为了前后端两个部门
问题:后端管的是数据和功能,前端负责的是页面和特效。渐渐的前端发现自己的岗位显得并不是那么重要。毕竟前端动画再炫不如后端一个数据库优化。前端架构师几乎看不到。这个问题到目前还没有解决
-
移动端设备兴起
2G3G网络时代,手机页面的快慢显得十分重要。 前端研究方向向页面性能优化转移。因为手机越来越多了,每个手机的尺寸还不大一样,于是响应式CSS也让前端变得重要起来。
-
自动化、模块化
开始研究一些自动化模块化的东西,让打包出来的代码性能更好
-
Node.js出现
Grunt/Gulp/Webpack, 前端是没有自带工程化的,于是开发了一些工具
CommonJS/AMD/CMD/UMD, 前端当时没有模块化,于是开发了一些工具,现在ES6 用官方模块化了
CoffeeScript/SASS/JADE(pug)
rails社区帮助了js社区。 把js、css、html难用的地方进行了升级
-
JavaScript/CSS/HTML 大升级
JS官方也看出了自己的东西不好用,于是从社区得到一些启发,进行了一系列大升级
es3 -> es6 html4 -> html5 css2 -> css3
V8性能提升,开始思考其他语言做的事情
-
MVC / MVVM / Redux / Rx.js
前端开始往各个领域抄袭
开始模仿MVC, backboneJS
模仿c#的WPF, ng发明了MVVM, vue也受到启发
facebook借鉴了游戏开发的经验,发明了react,配合redux思想封装
Node.js 后端开发初显
-
TJ加入node.js社区
大佬加入node社区,在ruby社区也有很大贡献。贡献了大部分的npm库, 把其他语言好的地方都用node实现了,如KOA, EXPRESS
-
JavaScript进入桌面端、移动端
webkit跑界面,node跑进程,将node和浏览器绑在一起,如vscode,atom
-
React 一次学习, 处处运行
react-native 用react-native语法写页面,会被翻译成原生的应用。
从此,浏览器,桌面程序,移动端 哪儿都可以有前端的影子...