2016年终总结

   看见大家都在写年终总结,技术与文采都很low的我也按捺不住来凑凑热闹。

   如果说2015年算是真正走进了前端行业的大门,那么2016年就是全速冲刺的一年,在这一年我做了三个从无到有的项目,也用了一些比较新的技术。

   首先是一个mac端的聊天客户端,由于公司觉得c++做桌面软件真的很慢,于是便将目光投向了我们前端团队,当然我们老大接了。原因就是electron这个神器的存在。我们开始项目时手机端和win端已经做的差不多了,而我们却是从0开始,当然最终我们赶上了他们的进度。再次不得不惊叹前端的潜力时巨大的。整个项目整体架构分为三层,后台 、sdk、 ui层。当然我们是负责ui层,当时用的框架是angular(插一句但是已经有人给我安利vue,但是感觉国人的玩意不太可靠也没去研究)。sdk是由c++提供,然后github上找了一个包nan 将c++编译为.node文件,这样我们就可以引入这个文件来使用。在这其中遇到最大的坑就是客户端经常跑死,经过无数次的踩坑最重总结出经验,全是c++造成的。只要他们某个地方报错,客户端就会卡死。最重项目也按时交付了,而且得到了公司的好评(虽然现在回看那时的代码写的跟屎一样)

   第二个项目是一个手机端的,嵌入原生app,这应该是我入行以来学到最多东西的一个项目,不得不说手机端的坑着实多啊。做这个项目的时候我已经注意到了vue,某个周六看了一天就被vue吸引了,感觉就是angular跟react的合体,简单实用而且体积小。于是回来在团队中各种安利vue,最重说服大家前端框架采用vue。这期间踩了好多手机端的坑,什么touch事件啊,点击穿透事件等等。加油总结了一下手机端调试的方法。为了前后端分离这个项目还引入了nodejs,node做的事不多,但正是用了node才让我了解了更多关于后台的事情,日志,linux,nginx等等。

   第三个项目是一个webIm,纵然很不情愿再用angular,但最重还是因为大家都对angular比较熟悉而选择了它,开始我们讨论需要兼容ie几,得到的答案是ie8,于是乎我们做了各种努力试图说服产品跟老大放弃ie8,但我们的努力是徒劳的。不过后来后台参与进来后,告诉我们这次mqtt数据格式都是protobuf,查阅caniuse protobuf兼容到ie10,多么欢欣鼓舞的消息啊,于是呼连ie9我们都不得不放弃了。这个项目中聊天我们采用的是websocket实现聊天的数据通信,但是不得不吐槽的是扫码登录部分竟然用的短连接,而且为了保护后台,没次受到相应后演示两秒再去发下一次请求,这样页面的相应时间上就有一个最多3秒的延时,找了后台几次但是都无力让他们修改。

   还有一些零碎的小需求小项目就不列举了,工作中遇到的坑,也作为笔记的一种形式都记录在了博客园中,最近老大安排我写一个自己的手机端脚手架,在写这个脚手架的过程中又好好学习了webpack,发现有太多有用的东西在vue那个项目中没用到,之前好多东西是webpack结合gulp完成的,重新写完脚手架后gulp我已经抛弃了。

   除了工作,平时自己也看了一些最新技术,自己也写了好多简单的demo,包括ionc mogodb 微信小程序等。但是不得不感叹前端变化实在太快了,express还没玩明白koa2都出来了,webpack1刚搞懂,rollup webpack2又出来了。还有太多了好东西没有时间去尝试,yarn,reactnative等等。

  展望一下即将到来的2017

  不论我们再怎么感兴趣,业余学再多的东西,我们也追不上前端更新的脚步。与其整天去追寻一些新技术新框架,倒不如沉下心来好好搞搞不太变的那些东西。

  给2017定几个小目标

  1.阅读一到两个框架的源码,真正把原生js学好才是王道,应该会选择jquery和vue源码进行研究。

  2.补充编程基本功,提高自己逻辑能力,研究一下常用的算法和数据结构。

  3.补充后台知识,作为程序员不能只限于一门语言,应该会在python和java中选择一个学习一下,当然linux和网络方面还是要做一些了解。

  4.最重点的找个女朋友。

   

posted @ 2016-12-29 16:59 致敬科神 阅读(...) 评论(...) 编辑 收藏