知乎有朋友问,前端代码记不住怎么办?
我的答案是:记不住就不记了。
工作这么多年了,还真的没有记过代码。
这位朋友应该是想着,当要用的时候,想不起来了怎么办?
分享一下在实际工作中的做法(也是我自己的工作流)。
前端开发工作流
来一个简单的场景:
突然地,项目上,张三需要实现一个 高大上的雷达图 效果。
这里要再加上两个常用的限制:
- 需要按照 UI 设计的样式实现
- 时间有限(例如只有两个小时)
那么这里就有 5 种方法,分别是:自己撸、找封装、查历史、找轮子、搜索引擎。
1. 自己撸
这玩意儿空手撸是不可能的,张三可记不住这种代码的。
另外张三也觉得没有代码是值得死记硬背的,与做数学题一样,理解万岁!
那怎么办呢,看看之前有没有封装过,收集过,或者写过的。
2. 找自己的封装
翻看自己的封装库(我喜欢把封装库叫做武器库),发现还真的没封装过。
张三心想,也是,平时业务代码都写不完,哪来时间和精力写封装呀!
那就想想之前哪个项目用过吧。
3. 历史代码
历史的项目代码,不是在电脑上,就是在代码仓库上睡着,都是有据可查的。
翻呀翻,仔细回想,还真的没有!
那就只能到网上找了,优先找现成的轮子。懒惰的张三能不写代码就不写。
4. 找现成的轮子
这里直接到 GitHub 左上角检索关键字:「radar」、「雷达」、「雷达图」……
Languages 可以直接筛选 JavaScript 与 HTML。
其实根据经验,这「雷达图」属于「图表」一类,我会优先找成熟的图表库,看看能不能满足需求。
想想用过的图表库,D3 要额外撸的代码比较多,ECharts 用起来比较简单,于是乎张三屁颠屁颠的打开 EChart 官方文档。
结果发现其提供的样式与 UI 的设计相差甚远,无奈之下只能选最后一步了。
(其实到了这里,还可以跟 UI 设计师或者产品经理沟通下,阐明原因。毕竟时间有限,现成的轮子是否能用,成熟的库省时省力还少 Bug 呢。)
5. 搜索引擎
其实就是复制+粘贴+修改
到了这里,没啥好说的,Google,百度走起就是了。
应该搜索到很多分享的教程,赞美作者们!
找到合适的,接下来就是复制粘贴修改了。
根据 UI 设计来修改,定制。开撸吧。
6. 收尾
其实新功能开发,到了上面一步就结束了,但为了下一次不浪费时间,提高工作效率。
张三会把这次经历的总结下来,把雷达图的代码封装成组件,或者整理收集,说不定下次就能直接用上了,再不济也能做个参考。
总结
回顾,在开发的过程中,正常情况下还真的没有故意记代码的情况,对于经常使用的,多复制几次,多敲几次也就下意识记住了(像一加一等于二一样)。
我觉得,如果想要在工作中不断进步,成长得更快,有所积累和沉淀。
那么,及时总结,是提升效率,升级自己的最高效方法。
不止是前端开发,其他工作也一样。
在日常工作中不断学习、坚持总结,我们就能构造出自己的专属「武器库」,并且随着时间的拉长,我们的「武器库」还能不断迭代升级。
对于我来说,这个「武器库」有代码片段,有封装,有工具。例如,日常的重复性工作,变为这些代码的复用——复制、粘贴与修改。
剩下的时间与精力可以分配到更有价值、更重要的事情,这些「武器」不仅仅是方便自己,也是体现自己价值的重要说明。
这并没有结束,人类的进步,就是不断提升效率、不停提高生产力的过程。
我会持续分享进步过程的所见所得、所思所想。
期待与您一同进步,欢迎关注公众号@世华实说。