写给前端应届生的职业规划建议
【前言】 近一年多的时间,笔者在公司中担任过应届生导师、实习生导师、应届生项目导师等一系列导师角色。期间,笔者发现一些即将和准备成为前端攻城狮的同学其实并没有明确前端真正的核心和定位,也没有给自己制定一个学习和发展的方向。当初选择前端这个职业,也仅仅只是为了找一份工作而已。笔者很想以自己的多年工作经验,为前端应届生们分享一下我心中适合前端工程师的职业规划,让大家对自己有一个比较清醒的认知,避免在以后的成长过程中产生迷茫情绪。当然,笔者其实也才工作五年,能达到现在的技术水平和职级,应该算是发展上升比较快的,一些经验具备一定的借鉴价值。
前端的兴起
前端真正兴起和开始频繁出现在大家的视线里,大概是在十年前。彼时的 Web 开发基本是由后端主导,前端能做的只是校验一下数据、操作一下 DOM。(其中数据检验是 JS 产生的根本原因:当时网络太慢,在服务端检验数据并反馈给用户,让用户知晓输入错误,这个流程太长、反应太慢,因此通过脚本在用户端完成第一步校验,既方便了用户,又减轻了带宽的压力。)即使 06 年 jQuery 发布并风靡全球,以及 XMLHttpRequest 被纳入 W3C 标准,也没有改变这种状况。制约它进度的原因很简单,因为很多事情前端 做不了 或者 做不好。随着时间的推移,近几年,Angular、Backbone、React、Vue 等框架陆续发布,让前端越来越正规化、体系化。此时虽然仍有很多事,前端 做不了 或者 做不好,但前端这个岗位却已变得热辣空前。那么,是什么推动着前端发展到如此大的规模和火热的程度?
也许,你可以列举出很多各种各样的原因,但是综其一点,就是 『用户体验』 ,是由于所有人对用户体验的重视,才让前端发展得这么迅猛,这么快地兴起。这里,可能要感谢 Apple,感谢 iPhone,感谢 Jobs,07 年第一代 iPhone 发布,正式引发了几乎所有人对用户体验的重视,从『只要能用就好』,变成『要好用我才买单』的心理。而,前端的先驱者们、浏览器的开发者们,也顺应了这个潮流,将一系列重要的能力加入了浏览器,加入了前端。
其中最重要的一项是 XMLHttpRequest,也就是 Ajax,它是富 Web 应用的基础,它让前端可以脱离后端的掌控,不用通过跳转的方式就能实现数据交互。感谢微软,感谢 IE,虽然被 IE 6~8 虐了无数遍,但是是它引入了 XMLHttpRequest ,引入了 Ajax,开启了富 Web 应用的时代,让用户体验大幅提升。
而近几年,随着移动互联网的发展,多端多平台的需求越来越多,产品形态和数据分离,是形势所趋。而与此同时,移动时代对产品形态跨端、跨平台、多元化的用户体验要求,让本身就有跨平台特性的前端技术着实又火了一把,它让开发者有更多的时间和精力关注用户体验,并很容易保持多平台用户体验的统一(不同平台用不同技术实现,虽然可以,但成本太高);除去上面的原因之外,前端技术自带的热发布、热更新特性,能在及时更新业务需求的同时快速修复用户所遇到的问题,也是大家选择它的一种原因。虽然另外还有很多零零总总、各种各样的原因,再促使着前端成为当前最火爆的几个职位之一,但是最根本的原因仍旧是大家对用户体验的要求。
从上面可以看出,前端的兴起源于所有人对 用户体验 的重视,而火爆更是由于所有人对 多元化的用户体验 的关注。当然,用户体验不只只是 UI 漂亮、好看,它是多方面的,例如视图的加载速度和流畅程度,这些取决于你选择技术的编码体积、运行效率等多种因素。说白了,前端的目的就是 让用户用得爽,那么 用户体验 必须是重中之重。
说了这么多,其实有一个很重要的点没有提到,那就是 CSS。注重用户体验,首先你要用界面要有 UI,HTML + CSS 作为最简单的 UI 构建方式,让前端的 UI 开发成本低到无与伦比,而开发成本低才会有更多的时间和精力去注重用户体验。同时,现在 CSS 也有相应的框架,像 PostCss、Sass 等,更进一步降低了开发成本,释放了开发者的时间和精力。
前端兴起这十年,也是用户体验飞速增长的十年。不管是技术完善度还是从业人数,前端这个方向受到了足够多技术人员的关注,同时也受到了足够多企业的重视。经过前端人不断的努力,现在的情况又如何呢?
前端的现状
提到现状,必须先提到一个概念 大前端。由于近几年互联网的发展,尤其是移动互联网的发展,有的大前端概念将 Native 归入前端的范畴,有的大前端概念将 Node 甚至只渲染页面的 PHP 归入前端范畴,但不管怎么说,笔者认为 大前端 是未来的一个趋势,将最终目标(提升用户体验)一致的技术归类到一起,让开发者清楚自己的最终目标是什么,要怎么做。当然,也正因为这点,作为一个前端工程师,如果你想更好的发展,你应该有更广的知识面,包括移动端知识、服务端知识。这些知识结合你的前端技术,才能更好地实现优秀的用户体验。
抛开大前端,单谈前端,从前端架构层面谈,最近比较流行的有四个:老牌劲旅 jQuery、最近火得不能再火的 React、Google 精品 Angular 以及 MVVM 框架 Vue。现在几乎所有的项目都会在这四种架构方案中选择其一作为基础,进行业务开发。四种框架,四种不同的思想,简单来说:jQuery Dom 驱动的思想深入人心;React 则推崇组件化,万物皆组件;Angular 则把 MVC 在前端领域发扬光大;而 Vue 则是以数据驱动为核心的 MVVM 架构。作为一个前端新人,不可能很快就理解所有知识和思想,只能一步一步来,先把你在工作中所使用的框架理解透彻,再去思考和学习别的。说实话,会用和理解的差距很大。
在这里,可能会有个疑问,上述四个架构,都很火,但是哪里涉及到用户体验了?是的,这些架构都没有直接涉及到 UI。但是就像足球,没有勤奋的训练和优秀的战术,再好的11人也踢不出好的比赛一样,这些架构从开发成本和开发体验上,降低了开发者编码和维护的难度,让其在 UI 的用户体验上的付出,事半功倍。当然,框架在编码体积、运行效率等多个方面影响了最终的用户体验。
上面所说的是,当前前端的一大现状
- 09-29工作3年和工作7年的程序员到底差在哪里?
- 09-29身为网络工程师,你能说清楚网络的概念吗?
- 09-29IT运维没做好这一点,恭喜你,这个锅你背定了
- 08-01浅谈Web经典三层架构和MVC框架模式
- 08-01作为首席架构师,我是如何选择并落地架构方案的?
- 08-01互联网架构的演变,看了好多这个讲的确实清楚!
- 08-01架构师教你如何设计一个高并发系统?
- 08-01分布式系统中Session共享的五种方法
- 01-11全球最受赞誉公司揭晓:苹果连续九年第一
- 12-09罗伯特·莫里斯:让黑客真正变黑
- 12-09谁闯入了中国网络?揭秘美国绝密黑客小组TA
- 12-09警示:iOS6 惊现“闪退”BUG
- 12-05亚马逊推出新一代基础模型 任意模态生成大模
- 12-05OpenAI拓展欧洲业务 将在苏黎世设立办公室
- 12-05微软质疑美国联邦贸易委员会泄露信息 督促其
- 12-05联交所取消宝宝树上市地位 宝宝树:不会对公
- 12-04企业微信致歉:文档打开异常已完成修复