一.有感而发
作为一名前端搬砖者,经常出现这种场景:一个npm install 下去,瘦小的工程文件夹瞬间变成了大胖子(这尼玛要是现金这么给该多好)。
没错,前端开发就是如此,大量的第三方库,瞎了无数的开发者,遇到一个功能,查查第三方库,看看api,一个npm install,然后拿来就用。作为功能开发,不重复造轮子,无可厚非,但长此以往,对于前端工程师来说,无疑是一种束缚,束缚了解决问题的思维,束缚了对代码艺术的想象力。
我在这条不归路上,也困惑了很久,熟练地捣鼓第三方库,认为玩得游刃有余,但真正需要自己设计上层的框架或者解决底层的细节时,显得无比吃力。我恍然大悟:熟练的使用第三方库,的确扩展了解决问题的路径,但真正成为高手,必须要了解其本质,只有庖丁解牛,才能做到伸缩自如。
二.出发点
我曾经尝试写几个框架解决自己的需求,兴高采烈地在github上创建完工程后,发现原来自己的想法早有人开始干了,抑或是一些先进的框架,稍作变通就可以解决我要的问题。
我深刻地揭露自己的私心:想通过一两个开源项目来提高自己的竞争力,这是一个积极,向上的想法(听起来真的很有理),然而,在我们没有达到足够熟练的情况下,愤然开了那么一个烂尾的工程,是不是又有点浪费资源呢。
于是,我深刻反思,与其生憋框架浪费资源,为什么不能好好分析优秀的代码呢?
用了那么多好的第三方框架,但从来没有静下心来分析一下源代码(一个简单的fork而已)。
三.一波鸡汤
认真分析源代码,才能真正的体会到语言的精髓,领略到奇技淫巧的美。
对与工作中,我们经常会遇到一些问题,使用第三方库显得臃肿,自己写又疏于考虑,这时分析源代码就成了非常好的办法,取其可用,除其多余,代码也变得灵巧。
嗯,分析源代码就如同吃鸡,一块一块撕下来,细细品味,再沾个小料,变成了自己的味道。
记住,一定要用手撕。