在我的印象中, 一提到软件工程, 首先不会想到的是前端这一块, 大概是因为以往工作偏向的缘故. 这两年最大的感触就是前端发展的很快, 时下的前端开发也远非从网络中抠一段 jQuery 代码就能搞定功能这么简单.
Ajax 的出现第一次将前端的请求异步化, 局部刷新使用户体验提升了一大截. Node.JS 的出现则将前端的发展推向了高潮, 一大批基于 V8 引擎, 基于 Node.JS 之上的开发工具脱颖而出, 极速的提升前端开发的效率, 效果.
下面从几个方面, 来梳理下近阶段关于前端的一些思考, 仅供参考, 欢迎在留言区讨论.
前端工程师岗位
但凡有点规模的团队, 前后端分离开发是必然的. 前端开发岗们之前多是由后端开发人兼职, 由网页制作人员将静态效果制作完后, 交由后端开发人员将动态功嵌入进去. 现在这么做的团队也有, 当然这样效率不是最高的. 前端工程师独立岗位的出现, 将前端工程化带近了一步. 这一部分专职从事前端开发, 而无须再关心后端数据如何组装, 如何处理, 如何存储, 将更大的精力投入到终端展现上面.
面向浏览器编程
(之前一直准备写篇文章叫 "面向工资编程") 这个词确实是最近一个月才接触到新名词, 被 ie6 折磨过的朋友相信很能体会背后的意味. 各种浏览器终端的出现, 且不少以未遵守 JS/CSS 规范的形式出现, 导致开发终端展现时不得不考虑各种浏览器, 浏览器的不同版本的兼容性. 时至今日, 前端技术的发展亦足以解决这个问题. Babel 的产生, 编程时只关注语言即可, 在构建时, 由其产生低版本 JS 以满足低版本的兼容性. PostCSS 的面世, 也使 CSS 开发时无须担心多版本, 多种类浏览器的兼容性, 好消息时, 各家浏览器也在积极的向规范, 向标准靠拢, 以使终端展现能够更加一致.
开发效率
一大批时下优秀的 JS 开发框架, 脚手架, 将 JS 开发提高到了前所未有的高度, 用纯 jQuery 的朋友都少了吧, 开始转向 vue,React,ng2 的怀抱了吧. Yoeman,Vue-cli 等脚手架工具, 可以让你轻松搭建一个前端项目. CSS 预处理, 预编译框架更是将这个弱编程的语言中加入了编程能力, Less,Sass 已经在很多项目中采用. 任务处理器更是极大的解放了人力, gulp,webpack 几乎成了现代化前端开发的必备. 本地化开发时, 通过事件监听, 直接热部署将结果呈现到终端, 而无须在反复刷新页面, 清缓存刷新页面. Mock 的出现更是将前端开发与后端开发隔离, 不再相互掣肘.
模块化组件化
提到工程化总离不开模块化, 提到了模块化, 似乎组件化也很有必要, 这是个一环套一环的依赖. 但实施起来亦是相当不易, 特别是有期限项目性工程, 交付第一, 交付结束如无后续升级, 基本不会进行模块化组件化优化. 产品化项目比较适用, 随着功能迭代推进, 模块化更有利于开发解耦, 提高复用性, 对后期维护也很友好.
Node 的出现, 使模块化更加简便, 你会发现模块化项目中, require,import,export 应用的如此频繁, CommonJS,AMD/CMD 在 ES6 之前在模块化研发起着比较重要的作用. ES6 中更是原生就支持模块化,(ECMAScript 简称 ES,JavaScript 只是 ES 的一种实现方式).
如果你对前端开发这门技术感兴趣, 这里推荐一下我的前端学习交流群: 767273102, 里面都是学习前端的从最基础的 html+CSS+JavaScript.jQuery,Ajax,node,angular 等到移动端 HTML5 的项目实战的资料都有整理, 送给每一位前端小伙伴. 最新技术, 与企业需求同步. 好友都在里面学习交流, 每天都会有大牛定时讲解前端技术!
来源: http://www.jianshu.com/p/5f9bacdd49da