Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

2016年终总结 #12

Open
berwin opened this issue Dec 30, 2016 · 9 comments
Open

2016年终总结 #12

berwin opened this issue Dec 30, 2016 · 9 comments

Comments

@berwin
Copy link
Owner

berwin commented Dec 30, 2016

2016年终总结

今天是16年12月30号,后天就是2017年了,一直拖到现在,趁着今天工作不是太忙,也是时候给自己做一个2016年的总结了。

关于技术

Koa

由于我们组准备使用nodejs进行前后端分离,所以2016年最开始我的精力主要放在了研究Koa上面,仔细研究过Koa的每一行源码以及Koa使用到的依赖(co、koa-compose等),对Koa的实现及原理进行了非常深入的理解,对Koa深入了解后我又研究了Koa2的源码,深入了解他们的不同及各自的特点,总结来说,Koa2和Koa各有优缺点吧

研究完Koa还是不够的,在实际项目使用中会用到非常多的第三方模块,所以我就把项目中常用的模块的源码也看了一遍(包括但不限于 koa-router,koa-bodyparser,koa-etag,koa-error,koa-session,egg-logger 等等),主要就是想明白他们的工作原理,并确定他们的安全性,毕竟对于server端我还是想尽可能的知道每一行代码是如何工作的,这样可以避免出现一些问题,即便真出了问题我也可以清晰的明白为什么会出现问题,而使用最短的时间解决它。

关于Koa我写了两篇文章,我自认为是目前国内关于Koa最火,最好的两篇文章,没有之一

深入浅出 Koa

深入浅出 Koa2

Promise

其实异步解决方案无论是co还是async都是基于Promise的,所以Promise已经是一个必备技能,所以我就花了一点时间把Promise好好研究了一下,并进行了一个分享

我分享的关于Promise的ppt

后来关于Promise我遇到一个坑,其实这个问题也挺有意思的,后来找到了答案,下面是我在cnodejs上的提问

《关于promise的一个很奇怪的问题》

ES6

ES6也已经是一项必备技能了,所以我系统的学习了一下ES6,我精读了一遍阮一峰的《ECMAScript6入门》,后来我又跟着我们组内的小伙伴一起精读了原版的 《understanding ECMAScript6》每周4大家会来总结每章的内容和一些使用经验与存在哪些天坑

Vue

我们组前后端分离技术选型选择的是 vue.js,所以我最近花了一些时间和精力来研究vue.js的工作原理,这样可以帮助我写出最优雅的代码(关于优雅的代码我想说的是:其实不理解原理也可以写代码,但是不能恰到好处的使用好每一个api,不能恰到好处的发挥每个api它应该发挥的作用,代码写到恰到好处,我觉得是一项艺术)以及更迅速的帮助我debug程序。

下面是我写的文章

《深入浅出 - vue之深入响应式原理》

《深入浅出 - vue之state》

还有一篇文章待写中《深入浅出 - vue之event》真正写出来标题和内容有可能会有变化。

最后给大家个福利 -> vue整体流程图

其他

其实2016这一整年除了上面提到的我还学了很多其他的零零星星的小知识,比如node中的stream呀,如何使用vuex呀,好多这种小知识,但是一时又想不起来,算了,随它去吧

关于分享

泛前端分享会

我们360内部每周一都有一个泛前端分享会,是我们奇舞团举办的,基本上每次分享者也都是我们奇舞团的小伙伴,我也不例外,在研究透Koa之后去泛前端分享会对Koa的工作原理进行了一个分享,不过据我观察听众们都是一脸懵逼的听完的,可能是我第一次分享经验不足吧

北京 NodeParty

7月份的时候应邀,在北京NodeParty对Koa进行分享,主题还是对Koa的工作原理进行讲解,这次台下的听众们好多了,能感觉的出来他们确实是懂的,也提了一些比较好的问题,后来回家听自己的分享录音,发现自己讲的真他妈的烂,跟屎一样,我到现在都好奇台下的听众是怎么忍受一个多小时的分享时间的。对自己的一个总结就是,

  1. 太紧张
  2. 因为紧张说话语无伦次

可能是第一次见到这种场面所以比较紧张,但我想下次在遇到这种场面我还是会紧张。。。

小灶会

我们小组内有《小灶会》活动,就是在我们组内进行分享,可以分享任何东西。

promise

小灶会启动的第一期光荣的由我给大家分享 Promise,并且在过后还给大家留了作业~ ppt

co

第二次在小灶会上分享是分享co的实现原理 ppt

关于生活

现在每周我都会在公司楼上的健身房锻炼2~3次,主要练胸、肩、臂部的肌肉,发现时间长了每周不去几次心难受。

报考了驾照,我发现我酷爱驾驶,开车真是爽啊,就是没钱买车

其他

读书

读完了:

《明朝那些事》全套7册,《编写可读代码的艺术》《小王子》《白夜行》《穷爸爸富爸爸》《外交官爸爸写给儿子的信》《万万没想到:用理工科思维理解世界》《教父》

还有一些读了一半放在那里一直没再读的:

《自控力》《巴比伦富翁的理财课:有史以来最完美的致富圣经》《知行合一王阳明》《晚清最后十八年》《沉思录》《红顶商人胡雪岩》等。

自考

2016年参加了10月份的自考,考了一门离散数学,并且通过了,现在在学习高等数学。

英语

学完了新概念一册

就这样,其他的想到了在补充吧~

@berwin berwin self-assigned this Dec 30, 2016
@berwin berwin added the Blog label Dec 30, 2016
@weimengxi
Copy link

欢迎继续读《白夜行》姊妹篇《幻夜》。
读完心情一定不好受, 可以再来一本《解忧杂货铺》。

暖心完怀疑东野圭吾变风格了吗?那就再来一本《嫌疑犯x的献身》,东野圭吾果然还是那个东野圭吾。

@think2011
Copy link

好想知道博主是如何分析源码的,另外流程图很赞!

@berwin
Copy link
Owner Author

berwin commented Dec 30, 2016

@think2011 一般有两种方法吧,一种是针对某个具体的api只看这个接口相关的实现,追着看。看完一个懂一个,看的多了,就形成了点到面的进化~还有一种是每个框架或工具都有一个入口文件,比如nodejs相关的源码package中都很明确的写了一个主文件,然后顺着这个主文件一层一层往深看,我一般用这种方式

@think2011
Copy link

@berwin (⊙o⊙)哦,谢谢!

@shouhe
Copy link

shouhe commented Jan 24, 2017

谢谢 帮我理解好多!

@hellovue2017
Copy link

为你点赞!

@berwin berwin added the Me label Jan 22, 2019
@EvilCodes
Copy link

如何自考呢?

@berwin
Copy link
Owner Author

berwin commented Mar 16, 2019

@EvilCodes https://zikao.bjeea.cn/ 这个网站上自己选专业,每年四月份和十月份报名去考试就行了

@songlindong
Copy link

你的promise ppt里面好像不是很全呢,还想学一下呢

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

7 participants