2016年5月10号加入现在的团队,到今天2016年12月31号,已经过去了接近8个月。这整个期间,我们团队都只有我一个前端工程师,我从刚开始的忐忑不安、压力极大,到现在基本上手,我们团队做的项目虽然不大,但是 restful+前后端完全分离+SPA 也是web app 的一种趋势吧。写出来,总结下,对自己以后道路做指引,对其他人能有点帮助也说不定呢。
这一年我做了哪些
刚开始的时候直接接手了一个做了个开头的项目。然后没办法,我就用 react 重新开始开发。由于以前并没有独立作为前端开发过项目,压力可想而知,非常大。
没办法,那一个月我上下班的1个小时左右的时间都用来查东西,看东西,然后基本每天下班都很晚。
当时真是没办法,因为对开发完整的项目真的是没什么经验。当时准备用 webpack 来组织项目来着,命令行用 cd 来打开一个文件夹这么基本的语句我都不会。。。这么一个命令我整整查了2天才最后在一个很不起眼的地方看到。
现在想想那个时候还真是挺拼的,虽然解决问题的效率并不能算很高。但是现在远没有那个时候那么拼了。
然后一个月后,就是6月初,公司发生了一点变动。
然后我们团队又重新开发一个新的项目,也是比较小的web app 项目。
这个变动的期间我了解到了 vue 这么个框架。看了下其它开发者的评价,又看了看它的文档,感觉很不错,由于我们公司只有我一个前端工程师,而且在我们公司我是最懂前端的了,所以我就毅然决然的决定使用 vue 来开发新的项目。
作为一个没有独立开发过项目的人,作为一个没有使用mvvm框架开发过完整项目的人,我当时也是蛮有压力的。
在新项目里,我才发现我们团队是在用 git 来做版本管理的?,然后又学了下 git 。
这样子我们产品的MVP总算堆出来了。
后来公司的团队成员有了一点变动,项目进度基本停滞了,产品经理和UX、UI会讨论产品原型,然后出原型图、设计图。我呢,就没有太多的任务了,只是断断续续完善一点东西。
这样的时间大概持续了一个月。
这个期间我学了 d3.js ,这个前端的数据可视化库,因为我们产品到后期可能要用到数据可视化库,而且掌握一个数据可视化库对前端开发来说并不多。
不得不说 d3.js,还是比较强大的,它的强大就在于可以灵活的做出想要的效果,而不像 HighCharts ,这些库拘束性比较大。
还有就是,之前听我们的后端说用的是 Python,然后就学了一点点。现在对这门语言印象比较深的就是它是靠空格来分割代码的,看起来很优雅。
了解一点Python之后,有个好处就是我对计算机语言的认识加深了一点,比如同样是循环或者条件语句,各种计算机语言会有不同的表现方法。
这一个月过去了之后,项目重新规划了一下,又继续开发了,但是前期是UI在出图,然后这个期间我就看了一点node的文档,万一以后使用node做东西呢,也算有个基础。学的不深,但是搭个本地的服务器,修改下文件名,新增文件、修改文件、删除文件还是可以做到的。
这之后就到了9月份,我印象还是挺深刻的,一下子增加了好多开发任务,整整忙了一个月,这一个月真的是实践的一个月。对开发的理解加深好多。
这个时候用上了 vue-cli 来搭框架,我用的vue-cli 的webpack 模块,自带babel 转换,所以就直接上手 es6 了。
然后就到了10月份,十一放假而且有朋友结婚就回家了,到了中旬家里有点事又回家了。这一个月基本啥都没干。
到了11月又忙了一个月。由于项目的一个重要分支之前没有加路由,没有加状态管理,所以不得不重构了一遍,而且项目又增加了一个很关键的需求。
这时候尤雨溪大神刚好发布vue2.0的正式版,所以就一并换到了vue2.0。
到了这时候我对vue2.0版的全家桶的基本部分都掌握了。
这时候到了12月了,这个月断断续续对项目做了一些优化。值得一说的一个点是我在服务器的请求用上了异步+Promise,以前由于经验不足+时间匆忙一直用的同步,网速理想的情况下同步也尚可,但是一旦网速较慢整个页面都会卡住,这是十分不理想的。这个估计是项目中最大的败笔了吧,好在可以调回来。从开始用的 zepto 的 promise ,后来全部转到了 es6 的 promise,然后是 Promise().all() Promise().race() 这些都掌握了。
12月我利用闲暇看了 《JavaScript高级程序设计》这本书,看了其中的4-5章。对于原型、继承认识清晰了,还有了解了JS数据的属性,还有学了 Object 对象的一些常用方法。可以说收获还是蛮大的。
自我定位
感觉自己的性格、IQ、EQ和特性还是比较适合前端开发这份工作的,然后了解新东西、理解新东西、学习新东西自我感觉还是比较快的,这是我的优点。
然后我这个人还是有点懒,在没有业务压力的情况下,偶尔会找不到北。希望新的一年能够有所进步。
然后是英文水平比较差,英文文档借助翻译还能勉强看,但是速度很慢。希望新的一年能有所提高。
感悟前端
对前端开发人员总是有各种各种的称号,程序猿、码农、前端、前台、前端开发、H5开发等等。对我自己而言,我更倾向于把自己看作一名前端工程师,是的,是前端工程师,而不仅仅是前端开发。
这个之间的差别就是前端工程师是基于项目工程的,就是说我做的东西要对整个项目负责,而不仅仅是完成指定的需求。换句话说就是我做开发是基于业务需要开发的并非仅仅是基于产品经理提的需求或者UI做好的页面。我对技术的理解是解决问题的能力,提高用户体验的能力,这个还是很重要的。这样才可以说前端开发还是蛮有趣的,因为再有趣的事情做上一千遍的时候也会厌烦。
当然从某种层面讲这种观点有点理想化,毕竟在大公司,每个人都只是一颗不太起眼的螺丝钉。这里只是说下自己的观点罢了,不见得很合理。
拥抱2017
2017年,工作上还是继续优化项目,增添一些新的功能。这些还是很期待的。
然后个人对前端的学习上,希望从学习一些库的源码切入进去,首先是 zepto/jquery 源码,这些大概要花几个月时间了,之后尝试看下 vue 的源码吧,估计都比较有困难,但是真的能够做到的话,相信在前端的道路上是一个很大的进步。
最后,看看大家的2016.
最后的最后,祝大家2017新年快乐!