学习计算机基础时,很容易把“看过”当成“学会”。视频看完了,示例也照着敲了一遍,合上电脑却写不出完整过程。为了避免这种错觉,我习惯用四个层次检查自己的理解。
第一层:看得懂
能读懂一段代码、一张结构图或一段错误信息,知道它在描述什么。这一层依赖基本概念和术语,是后面所有学习的前提。
但“看得懂”并不等于“能独立完成”。就像看别人做菜能看懂步骤,不代表自己就能做出一桌菜。
第二层:做得出
在没有现成答案的情况下,能独立完成一个最小任务。例如:
- 给定输入,写出对应的处理程序;
- 看到一个报错,能定位到大致范围;
- 能把一个模糊的需求拆成几个可执行的步骤。
这一层需要练习,而且需要“稍微超出舒适区”的练习。反复抄写同样的示例,收益很低。
第三层:讲得清
能用自己的话解释为什么这样做,而不只是说“老师就是这样写的”。讲清楚至少包括三个问题:
- 这个方案解决了什么问题?
- 为什么不用另一种方案?
- 在什么情况下它会失效?
能讲清楚,通常意味着知识已经从零散的操作变成了可连接的结构。
第四层:迁移得了
把学过的方法用到新问题里。例如把循环中的边界检查思路,迁移到输入校验;把调试时“缩小范围”的方法,迁移到环境配置问题。
迁移是学习真正发生的标志,也是我最容易忽略的一层。很多时候我以为自己会了,换一个场景就发现不会。
怎么用这四个层次
不必每次学习都走完四层。日常接触新知识时,先停在“看得懂”也可以。但对于要长期使用的核心知识,我会至少做到“做得出”和“讲得清”,并在一段时间后尝试迁移到一个小项目里。
用层次来判断,比用学习时长来判断更可靠。时间只能说明投入,层次才能说明掌握到了哪里。