上周老爹住院做手术,去广州陪着照顾一星期。万幸手术顺利,然后这两天也可以出院了。只是从此颈椎骨多了几个螺丝。
那几天的感觉,有点像是从技术的海洋被拽回到现实中。人啊,每次遇到健康的问题,才会突然发现其他问题都不是问题。
今后自己也要好好养生。。要是以后有了点积蓄,结果用来看病,可就悲剧了。
-------------------------------------------------
回到深圳,决定还是先继续前端的工作。昨天稍微复习了下react栈,发现这些库看看文档和核心源码,还是很快能重新掌握的。
倒是突然发现不知道什么时候起,看代码的时候,比起这些东西怎么用,更关注这些东西是怎么实现的。
比如redux,核心还是提供了一个createStore方法,给app创建一个全局的state管理容器。但实际上就是一个闭包,里面定义了一些变量和方法,然后把方法用字面量对象的方式暴露给外部罢了。其subscript方法只是往闭包中的回调函数数组塞入回调,然后执行dispatch的时候先调用reducer计算新state,再遍历触发回调列表的函数,就是一种简易的观察者模式。
至于applyMiddleware这类工具函数,只是通过函数式的compose给store.dispatch方法做层层包装而已。处理多个enhancers也是一样。({getState,dispatch})=>(next)=>(action)=>{...}这种中间件写法,next就是那个要包装或被包装的store.disptach。
倒是react-redux这个库,看了下源码还是用的getChildContext这个api,但新版react目前是极力推荐大家弃用旧的context api,以后可能就换一个或自己用新context实现了。
至于ui库,antd或material-ui这种开箱即用的就不用看了。
然后尴尬地发现现在react的需求少了很多,倒是很多公司招vue(毕竟开发快)。
还是先复习下nodejs吧,不过还是希望这段时间能找到个企业有用go/python,再好好沉淀。