总有人说学习编程之后知识点很容易就忘记了,这该怎么办呢
针对这种问题,我们有一句描述,叫:一学就会,一用就废。
这就和刚开始写作文一样。字儿都认识,别人的文章也能看懂,但自己写就怎么都写不出来。
后来怎么就又会了呢,因为被老师逼着写得多了,就会了呗。
所以,还是练得少。
自学编程,在「练」的方面,我建议分三步走:

一、刷 OJ 题练语法
就是到各种 Online Judge 刷题,非常适合新手。
可以先从简单题入手,一个一个地切。乏味了,再逐渐增大难度。这样可以不断收获成就感,甚至上瘾。
首先推荐「力扣」(LeetCode),商业化运营,比较友好。
其次推荐各种大学的面向 ACM 竞赛的 Online Judge。
不管在哪里刷题,做到需要特别的算法才能求解的题,就可以暂停,走下一步了,因为我们的目标是提升工程能力,而不是算法。工程能力才是大多数程序员吃饭的家伙,算法是锦上添花。后面需要时,随时可以再回来修炼算法。
二、读源码练认知
就像写出好文章,得先读几百篇别人的好文章一样,读优秀的代码能学到太多太多别人的经验了。
但没实际做过项目,没经过工程化的洗礼,常常不能领会别人代码里的精妙,甚至会觉得人家的一些做法好像多此一举。所以有了一些项目经验后,再读优秀的源码,才能真的提升认知。
现在开源软件那么多,优秀的代码并不缺,缺的是一颗啃下去的恒心。
建议选一个自己会用到的,比如各种框架源码,开始读。这有两个好处:
知道它是干嘛的,读起来更容易理解。
读懂了,对用好它们也大有帮助。
读源码的技巧,知乎已经有很好的相关答案了。
读的过程中,如果能再试着改改 bug,做做自己想要的 feature,提个 PR,一旦被接受,那成就感是相当爆棚的!
三、用 AI 编程练感觉
前两条都是传统硬路线。这第三条是个捷径,但可能是直通未来的。
AI 大模型出来后,尤其 GPT-4 无与伦比的编程能力,让很多人惊呼,程序员要被替代了
从我实际使用 GPT-4 + Copilot 写出几万行代码的经验看,程序员并不会被替代,而是要改变工作习惯,尤其是学技术的方式。
以前我们是先学再用,以后是先用 GPT 生成代码,边调程序边学。
AI 编的代码是厉害,但很少有直接就能用的,还是需要有经验的人 review,确认后再提交。
在这个过程里,人类的价值体现在能看懂 GPT 的输出,并基于认知判断有没有问题,问题在哪里。把问题指出,AI 还能再改。人类自己手敲代码的机会是不多了。
所以通过本文一和二练好语法能读懂 AI 输出,练好认知能判断 AI 对错就足够了,并不需要牢牢记住很多细节。也就是说,有编程的感觉就够了。

