转自:http://www.cnblogs.com/vajoy/p/5040365.html

写惯了技术类的文章,这种总结和唠嗑型的我基本也就在年末才来一篇。说实话,这种轻松类的文章往往比技术类的要受欢迎的多,因为其受众更广,看起来也不烧脑。

说来愧疚,这一年其实产出有点低,大致就写了不到二十篇技术随笔,特别下半年入职腾讯后就更少有时间动笔了。

但再忙也没打算摒弃写文章的习惯,一来是为了自己沉淀,二来也是希望自己能为国内的前端分享出点贡献——这想法虽然有些滑稽,却也是我本人确切真实的想法。有时会想着自己能给这个社会带来、留下些什么,如果没有揭露相对论的能力,那么写点文章我还是得以胜任的。

就我个人而言,今年发生了蛮多事情,但今天不讨论私事,纯粹作为一名前端er来侃侃前端这块的一些趣事儿,或者说我的一些拙见。

前端的大环境

自从09年 Node 出来后,前端的内容愈来愈丰富,各种技术日新月异迭代起来乐此不疲。

如果你想学习Node,可能会入手《Node.js实战》一书,然后试着捣弄 Express。殊不知现在有很多人已经玩上了 KoaJS,嘲笑着还在使用 Express 的民工,紧接着是用上 thinkJS 的人翻着白眼谈笑风生。

前端自动化工具也是撕逼的厉害,从 Grunt 到 Gulp,从 Bower 到 jspm 和 webpack,仿佛一夜间 Grunt 上那上万个插件包就都统统过气。

哦对了,谢谢谷歌和脸书,ng拉起了五花八门的前端 mv* 框架潮,React的组件化概念也颠覆了常规web开发的理念。

还有新面世的ES2015,让我想到个好笑的事情——babel迭代到6的时候,各大前端技术群里风声鹤唳的,因为相比旧版本,babel6的配置变得太多了,又缺乏(中文)文档,导致一堆手贱升级又不懂配置的码农哭晕在地板上。

另外 Phonegap、React Native、Fuse 等的出现也让前端日渐渗透进了移动应用端,噢别忘了现在通过 node 还能开发桌面级应用呢。

有人说这是前端最好的时代。

我觉得对前端er来说,这或许也是个挺操蛋的时代——要去了解的东西实在太多了。

前段时间 Aaron 在群里吐槽,表示近些日子前端的变化让他都要崩溃了(当然是句玩笑话,真正会让他崩溃的应该是他当日的猪肉没卖完)。

有个朋友不久前告诉我,说他买了好几本小说在看,我当时的表情是这样的:

原因很简单——我已经很久很久很久没有涉猎过非技术类的书籍了,要知道我的书架上每天都有几本厚厚的技术书对着我说:“还没把我看完啊?啥时候看我啊?今晚上我好吗?”。。。我又哪有闲暇时光去看其它的小说。

所以如果现在有张白纸(当年刚毕业的时候,我的第一位上级是这么形容我的)说他要从事前端的工作,我会笑着摸摸TA的头温柔地说道:“请你吃点屎冷静下好吗”。

武器或内功

前段时间成立了个分享小组NZOO,大熊在里头挥着旗帜带大伙搞Node,原生的Node。然后北川君站起来了,说他觉得更希望带动小组直接分享一些现有的主流框架,而非把学习成本花费在原生Node上,原因很简单——来钱快。

北川君在公司是个领导级的人物,所以很好定位他的思维——一切以开发效率为主、以钱为主。

这并非只是一个日常观点小碰撞,我觉得有必要好好思考思考,自己现在在学的是什么、想学的是什么。

我在上家公司的时候,给他们部署了gulp前端自动化工程,带起了sass、avalon 等一些他们没应用过的、开发快也更好维护的新技术,效果是,显得你很牛逼 —— 如果你擅长使用一些新颖好用的新工具,那么常常能很直观地给项目带来利益(效率或性能上),那么这会成为你职场上的一个助力。事实上对于许多中小型企业而言,他们更注重于敏捷开发,那么懂得“班门弄斧”会是一件重要的事情。

对于大公司而言就不一定了,像我现在所处的部门基于历史原因基本都还在使用 Grunt,有时业务需求一负责你是找不到对应的 Grunt 插件的,会考究你的原生代码书写能力——自己写出一个插件来作为解决方案,而不是去 npm 上搬个擦屁股的救兵。

作为一名老前端,肯定会用过许多主流的工具,比如 jQuery 及其各式插件,比如 Vue 比如 React,但很多时候我们就是那么习惯性地用着,可能没想过了解下它的源码、实现方式——这在我后期想起来是种略为毛骨悚然的事情。

如果说把各优秀的前端工具/框架当作一把锋利的兵器,那么阅读源码、了解它们的实现方案便是内力的培养。

很多人可能工作了不短时间,但技术不见增长,一个较大的原因还是“懒”——啥功能都懒得自己写,直接拿起插件生搬硬套,搞的页面性能差不说,自己也不懂扩展和维护,不知其中一二。

其实说白了,武器的练习跟内功的培养其实也不冲突,你可以一手抓,只是往往罩杯较大可能没法一手掌握,会比较吃力,那么还是建议你审视下自己的职业规划,是兵器能带给你更多的利益,还是内功能让你更强大,然后做出权衡。

如何学习

关于本人“两年前还在群里问js对象里的冒号是什么意思”的经典范例常常会被群里的人拿出来做谈资笑料,北川这死不要脸的还说他给下属洗脑的时候还把我当例子了。

今天下午也有个孩纸私聊我问我是怎么学习的,才能从小白变V神(虽然我墙裂觉得后面加个“经”字才合适)。

虽然离“大神”还有挺长的摸索距离,但。。。咳咳。。。稍微吹下牛我还是可以的。如果涎皮赖脸地总结下我的学习经验,我大致会归纳为这么几点:

1. 拒绝插件

不要遇到一个交互效果就想着扒个插件来用,想想它会怎么实现然后试着去写出来。遇到困难了不着急,参考下别人的插件是怎么实现的。

个人觉得“写插件”是每个前端小白要初步进阶所必须试着去做的一件事,它对你的提升可以是很大的,不仅仅是有助于你在技术点上的认知,也有利于提升你的JS语感。

2. 加入一个氛围好的技术群/团队

如果你身边没有这么一群喜爱技术的小伙伴,那么找个氛围好的群加进去吧,让大神带带你或者跟小伙伴一起同步交流,学习起来自然也不孤单,还有人不断激励你前行,何乐而不为呢?

3. 多利用时间

“多看书多看好文章”这种废话我就不说了,但请你不要每天把精力花在看肥皂剧上然后又埋怨没时间学习。

时间总是可以挤出来的,你可以在你上厕所的时候想想Ajax原生请求怎么写,或者像我之前像个傻逼一样把Node API打印出来拿在路上边走边看。

当然也不要把时间都花费在学习上,有时间多陪陪妹子多出去走走聚聚,程序员的日子不应该太压抑。

不过我也检讨一下,上周有三天时间沉迷于我厂新游怪物猎人OL上(卧槽我真的不是打广告),结果第三天玩着玩着,向来讨厌浪费时间的我突然觉得自己是不是神经病了(反正就这个念头),接着立马把游戏卸载了。。。

4. 学!英!语!

不久前很多话题讨论说,英语是最没必要掌握的课程,建议教育部革除其作为三大主课程之一的身份。对于这批可爱的网友,我建议他们可以去叙利亚好好地旅游放松下。

起码就IT行业而言,英语是非常重要的技能,特别当许多新技术出来的时候,基本只有查阅英文文献才能找到解决方案(babel6就是个好示例)。

所以如果你的英语能力不够好,努力地去提升它吧,装个有道词典划词来看文章,争取能看懂外文的大部分意思。

总之这点不是开玩笑,阅读英文文献对于码农来说是非常受益的事情,另外遇到问题你也得以去 github 提个issue来解决。

5. 多沉淀

试着开个博客吧,认真地记录下那些你在项目中遇到的问题和解决方案,或者用心地去查找、梳理你感兴趣的技术点然后记录下来。

它会耗费你一些时间精力,但也能催动你更深入地去了解、探讨某个知识点,巩固你对它的记忆。也可以作为将来反过来查询的工具书。

6. 干掉让自己焦虑的那些东西

在职业生涯初期,作为小白总会有许多未接触过的技术盲点,有时候工作来了或者前往面试,都会由衷地担心起来,为自己知识的欠缺、胜任与否而焦虑。

我个人及其讨厌这种“焦虑”甚至“害怕”的感觉,一旦你感到这块的压力,一定要大胆地把它挖掘出来,然后一个个干掉它。

什么意思呢?比如当你觉得“我好像不会写原生的Ajax”、“跨域的方法我貌似没法都答上来”的时候,就尽早去找资料学习和了解,一步步干掉知识盲点,这样你只会愈来愈自信。

要记住只有你才是最了解自己弱点的那个人,只有你才是能拯救你自己的那个人(卧槽你拍电影啊)

有必要进大公司吗?

我觉得,作为一名搞IT的码农,没进过BAT总会有些遗憾(我也经常拿这个激将Aaron来深圳),所以如果有能力还是试着来这边镀镀金,或者说镀个经历。

他会让你了解一个大公司是怎样运作的,会让你视野变得很广阔,这里也有很多前人的知识沉淀或课程分享,身边也都是优秀的小伙伴可以交流和碰撞idea。

也会让你走上加班不归路(哼我设为斜体字了你们肯定看不到这一行)

但是如果你是应届生,我建议是先别急着进大公司。

原因很简单,大公司分工太细了,常规招你进来只做专才,你会在某个领域逐步精通,但放开整个前端面而言,会很欠缺实践。

说实话,我觉得大企业细分工作的形式,会让部分一直待着的员工,即使他们很优秀,跳槽去一家中小型企业的话,可能也没法很好地胜任前端一职。因为很多中小企业要求前端得是全能的——切的了图写的了样式编的了脚本,今天让你写个手势插件,明天让你搞个跨域通讯,后天让你负责个走spa的hybird。

有能力进大企业的应届生,往往都能在中小型企业里逐渐成为技术主导,会负责各种各样的工作,遇到各种各样的问题,自己手动编写各种各样的模块,这能给你带来非常丰富的从业经验(当然也会有所压力)。

在大企业的话,所能主导的部分自然会变少,因为有许多大牛早已帮你写好了各种业务模块,项目也早已确定好了相应的技术选型,而我们更多的是在上面做二次开发。

所以总的来说,能在外面有个几年实践和磨练再进大公司,会是我个人觉得的比较合适的选择。

年度书籍推荐

不吹不黑,我厂AlloyTeam成员曾探先生在今年发行的《javascript设计模式与开发实践》一书,是我个人认为的今年最佳的前端书籍之一。

本书结合了大量的业务实践来娓娓道来js各大设计模式的原理和应用,能让你更好地了解、掌握这些思想。

另外本书的语言组织能力也非常出色,用了许多生动形象的例子来帮读者了解一些生涩的概念,相比之下,现在世面上某本译作简直是disaster(那本书被我扔在上家公司都懒得收回了)。

这本书比较适合中等级别的前端朋友来涉猎,能让你收获很多意想不到的知识或解决方案。

一个前端er写在2015年末的话相关推荐

  1. 写于2015年末的总结

    写作:是为了光阴流逝使我心安(源自知乎一话题),这一出发点鸣动我心:也是此刻键盘敲击动力源之一:兜兜辗转,2015年好或坏的都将成为历史,几近年关,俗念盘桓,免不了感慨总结一番,也算对新一年展望与期待 ...

  2. 一个前端er使用浏览器打印功能快速制作PDF简历

    前言 过年完回来,从广州搬回了佛山居住,打算换一份佛山的工作,在准备简历的时候,想起之前在公司负责过一个浏览器打印的功能,可以利用这个原理,快速生成一个pdf简历,甚至乎加上媒体查询,放自己服务器上面 ...

  3. 写于 2016 年末

    原文出处:晚晴幽草轩 原文链接:写于 2016 年末 猝不及防的,今日就被成为了 2016 最后的一天:这想必是,近期的过活充实过了头,以致忽视了时光的流逝.时间这尤物,你越想试图去抓住她的时候,你会 ...

  4. 作为前端er,写在年末的一些话

    写惯了技术类的文章,这种总结和唠嗑型的我基本也就在年末才来一篇.说实话,这种轻松类的文章往往比技术类的要受欢迎的多,因为其受众更广,看起来也不烧脑. 说来愧疚,这一年其实产出有点低,大致就写了不到二十 ...

  5. Day 2---vue2 从0开始 写一个前端框架

    项目背景:vue2 业务需求:用Vue+Element 写一个前端框架 今日主线任务:完成静态登陆页面 项目地址: https://gitee.com/whwbs/my_project.git 准备工 ...

  6. 如何写一个前端组件-以bootstrap-tab为例

    介绍 本文以Bootstrap标签页组件为例,介绍如何编写或者封装一个前端组件,以下是实现效果: 原生的Bootstrap-tab组件主要有html,css组成,开发者使用时,需要写很多代码,不易于使 ...

  7. 一个前端的入行故事,零基础,2个月自学入门前端,半年从外包进淘宝

    我,Scott,一家创业公司的 CTO. 从业 6 年却很少写文章,近一年来接触了几十个刚毕业的前端新人,也面试了 100 多个前端工程师和 Nodejs 工程师,对于前端发展的这个职业算是有些感触吧 ...

  8. 一个前端菜鸟的成长历程

      从实习算起,到现在工作了也有一年半的时间了,在这期间,深深感受到了前端领域的飞速发展,在这里记录一下自己的成长历程,算是对知识的一个梳理,也希望帮助到刚入行的同学们.说来惭愧,大学里并没有涉及前端 ...

  9. 一个前端菜鸟的成长记

    一个前端菜鸟的成长记 现在才总结似乎有点晚,但聊胜于无,记录一下我的2016,毕业的第一年,对于人生意义重大的一年. 我的求职之路 打从进入了大四之后,便深深的意识到了就业的压力,并一直在做着迈向社会 ...

最新文章

  1. 公元2019年,你对AI的信任有几分?
  2. linux系统重启网络delaying initialization错误的解决方法
  3. Delphi的实数计算结果中只保留2位小数
  4. VS2008文件操作出现问题
  5. Web框架——Flask系列之session机制(十六)
  6. 相机内参中cx cy_Opencv中的两种去畸变函数
  7. python treemap_使用TreeMap
  8. MySQL延时更改数据_mysql数据库备份设置延时备份方法(mysql主从配置)
  9. [开发语言]C#项目如何制作安装程序
  10. java mp4转码 h264_10分钟学会Jave视频转码avi--gt;mp4(h264编码格式)!_Java_七九推...
  11. android图片底部居中对齐,Android 解决图文混排,图片和文字居中对齐问题(ImageSpan)...
  12. 自动操作: mac新建文本文档
  13. html用户名注册登录代码,HTML用户注册界面的实现
  14. 迅雷9去右侧浏览器补丁
  15. Abp vNext 常见问题
  16. 全球与中国湿疹护理产品市场现状及未来发展趋势(2022)
  17. 数组的下标访问和指针访问方式效率分析比较
  18. ElasticSearch学习
  19. Java项目:进销存管理系统(前后端分离+java+vue+Springboot+ssm+mysql+maven+redis)
  20. Lab01: Logisim简单数字电路模拟实验

热门文章

  1. ubuntu里打开rar,zip文件方法
  2. 实验报告:定义一个表示学生的类Student
  3. ViewPager数据加载错乱的问题
  4. mysql 列转行union all_MySQL中的列转行 - osc_qheq8wav的个人空间 - OSCHINA - 中文开源技术交流社区...
  5. 毛线剪藏(MaoXian Web Clipper)的安装、设置和使用
  6. 计算机仿真氢光谱实验,氢氘灯光谱 实验报告
  7. 这是最全的数学建模资料了吧?
  8. Mophie vs RavPower vs Belkin: 哪家无线充电板最强?丨Xtecher 评测
  9. WPF Border 设置只加一边
  10. c语言程序设计林小茶,C语言第一篇概述林小茶