1. 先聊个现象:看不懂代码,为什么还要硬着头皮走完流程
你是不是也有过这种时刻:跟着教程下载了一个开源项目,README 第一页写着一堆你暂时不认识的命令;好不容易把环境装好,又照着别人的示例代码敲了一遍,最后看到屏幕上输出一串莫名其妙的结果,心里其实根本不确定它到底算不算成功。如果这时候有人问你“这段代码你懂了吗”,大概率只能摇头。更扎心的是,你还知道,自己下次换一个场景可能还是不会写。
但奇怪的是,等你硬着头皮把流程走完一遍之后,很多东西会悄悄发生变化。我以前带新人的时候,经常让他们先照着现成示例跑代码,不要想“看懂看不懂”这个问题。有人一开始会反问我:这种“鹦鹉学舌”式的操作有什么用?等我让他把一个 Python 量化交易策略代码或者 C 语言文件读写操作代码跑完三遍,他再回来讨论问题时,问的问题明显从“这是什么”变成“为什么这里要这样处理”。这个转变不是玄学,背后是有心理机制支撑的。
这篇内容不是什么具体框架的教学,而是一次关于“代码、学习与心理机制”的经验梳理。适合正在从零学编程、刚进项目组却被现实代码砸晕、或者单纯想弄明白“为什么要先动手再理解”的人看。先给一个结论:看不懂就去照着流程走一遍,不是自欺欺人,而是用一套符合大脑运作规律的方法,把陌生代码变成你能从行为上“抓住”的东西。
你可能会说,这不是废话吗?我直接一头扎进去不就行了。问题在于,很多人扎进去之后会因为“看不懂”而产生强烈的挫败感,然后迅速放弃。他们总觉得学习应该先理解、后实践,代码没看懂就去敲,是在浪费时间。可他们恰恰忘了,代码不是一篇文章,不是用眼睛“读”就能掌握的,它本质上是一套需要运行起来才能观察到行为的指令系统。没有运行,没有反馈,人脑就很难从这段文字里建立真正的直觉。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 为什么“看懂了”却不会写:先拆穿学习中的三个认知幻觉
很多人在“走过流程”之前,卡在了一个心理关口:我明明刚才把示例代码看懂了,为什么让我自己写就写不出来?这种体验太普遍了,普遍到很多人开始怀疑自己智商有问题。其实问题不出在智商,而出在你误把“看懂”当成了“学会”。
2.1 流利感骗了你:看懂只是眼熟,并不是掌握
心理学里有个概念叫“流利性错觉”,意思是:当信息读起来很流畅、很顺畅的时候,大脑会产生一种“我已经会了”的假象。你看示例代码,每行都有注释,逻辑被作者理得清清楚楚,变量名起得也很直观,于是你顺着读下来毫无障碍。这种顺畅感被大脑解读成了“我掌握了”,但事实上你只是完成了一次低难度的被动阅读。
举个例子。看别人做西红柿炒鸡蛋,步骤是切番茄、打蛋、热油、下锅、翻炒、加盐。你看了三遍,觉得太简单了。真轮到你上手,你会发现自己不知道该什么时候放盐,蛋炒到什么程度算嫩,油温多高才不粘锅。代码比做菜更隐蔽,它表面上是一段静态文字,实际是一套在机器里动态执行的过程。你读到 for 循环的时候,脑子里确实理解了“重复做某事”,但没有亲手运行过,你就不会对“循环变量如何变化、跳出条件什么时候满足”产生体感。这种体感只能靠动手跑出来,看永远看不出来。
2.2 工作记忆太小:人脑本来就不适合“脑内运行程序”
另一个更底层的限制是认知负荷。人脑的工作记忆容量非常有限,研究者一般认为成年人一次只能有意识地处理四到七个组块。新手看一段稍微复杂的代码时,每个 token 都可能占掉一个组块:一个未知的函数名、一个没见过的 API、一个奇怪的参数,都能让工作记忆迅速超载。超载之后大脑会进入“保护模式”,表现为烦躁、走神、想关掉页面。
这时候如果你要求自己“完全看懂再动手”,几乎等于让一个内存只有 4KB 的计算器去跑操作系统。但如果你照着流程先把代码运行一遍,情况会立刻不同:机器的输出把那些抽象的中间结果变成了屏幕上的可见文本,变量状态、函数调用顺序、最终结果都不需要你在脑子里硬记了。人脑的负担从“模拟执行整个程
