其实没有啥捷径可以走, 秘诀只有一条:多写代码 + 多思考!
代码量上去了, 即便是垃圾堆的多了, 思维也就出来了。很简单的道理,垃圾代码绝对会对人对程序造成困扰, 自己维护都觉得恶心, 给别人维护, 只会被人喷的份儿!!
同时写代码的时候要多思考,多想想自己这样写对不对, 那样写对不对;
我在 17 年-18 年的时候, 算是我编码能力提升最快的时候, 我就是这么一年多的时间, 从一个寂寂无名的小公司, 到 19 年初,进到了一线大厂工作。 考的诀窍就是写代码, 大批量写代码, 甚至到了一周平均要肝一万行左右的程度了。
如果公司有项目, 那就干公司项目就完事儿了, 如果公司项目比较不行,或者以改 BUG 为主的话,可以考虑一下, 做一些自己的一些个人项目。
至于有哪些项目可以做呢?我觉得有很多的方向可以考虑去做!
1. 后端改写 nodejs 项目
有一些很多项目都是 Java 项目, 或者 PHP 项目, 那就直接把他们改写为 nodejs, 框架使用 nest 等, 多写几个项目, 至少 nodejs 技术能力是肯定过关的;
如果不会 Java 或者 PHP , 或者 GO 等, 那咋办呢?
甚至你都可以 nodejs 项目改写为 nodejs 项目, 咋改写?换一个框架嘛;
比如:express 的改写为 koa, egg 改为 nest ;
推荐一些, 比较经典, 且容易改写的项目:
2. vue 或者 react 项目, 改写为 web-components
为什么是 web-components , 为什么不是 xxx 框架?个人感觉前端框架, 无论是 react 还是 angular , 还是 vue 都是很易用的框架, 非常好入门。 特别是 vue, 有一定的编程经验的人, 说真心话, 可能只需要几天就可以上手做项目了。
那么难点儿在哪儿呢?我个人认为是真正理解什么是组件开发, 什么是数据状态驱动。 web-components 可以让项目真正的零依赖, 原生跑起来。 通过这个的改写, 基础知识绝对扎实!任谁都得竖个大指头。
3. 做一些好用的工具:
这种好有的工具很多, 但是目标并不是造轮子, 而是学会如何利用变成知识解决自己的问题;
这里举几个我以前做过的例子:
- 写了一个 koa 日志输出的中间件, 随插随用:GitHub - yanlele/koa-logs-middleware: koa2日志监控中间件
- 写了一个项目工程初始化的脚手架工具:github.com/yanlele/le-…
- 买了一本书, 学习D3 可视化, 但是都是基于 D3 4 版本来的, 我用 D3 5版本重写了里面的所有demo: github.com/yanlele/D3.…
做这些的好处, 可能跟多的是训练自己的动手能力、思维能力、解决问题的能力。
4. 自己尝试实现一下经典的轮子
可以参考这个文档, 尝试自己实现经典的轮子, 可以让自己很快掌握大佬们的编码思维、设计模式、经典编码范式, 可以看他们实现一个功能, 该怎么思考, 怎么做。