关键不是把中断前的进度背下来,而是让下一次打开练习时,能在几分钟内判断“上次停在哪、下一步做什么、哪些结论还没验证”。可恢复状态由三样东西组成:一个未完成的动作、一份足以复现的上下文、一个明确的恢复入口。中断时间长于一次练习周期时,应把练习拆成可独立收尾的小段;中断短且频繁时,则应保留一条连续主线,只在断点处记录状态。下面按这两种条件分别说明。
选择依据不是中断次数,而是两次练习之间你还能记住多少上下文。如果隔天甚至隔周才回来,记忆里的页面结构、变量命名和待验证假设都会模糊,这时继续沿原任务往下做,往往要花大量时间重新理解自己写过的东西。相反,如果每天都能碰一次,只是被消息、会议切成十几分钟一段,问题就不在记忆,而在每次重新进入时找不到最小可执行动作。
可以用一个简单测试区分:中断后不看任何记录,能否说出“上次改的是哪个模板、为什么改、还没验证什么”。能说出,属于高频短断,保留主线即可;说不全,属于长间隔中断,需要把练习切成能独立结束的单元。这个判断会直接决定你记录什么、记录多细,以及恢复时先做什么。
长间隔下最有效的动作,是在每次结束前把当前任务收缩到一个能单独完成并验证的小块,而不是停在“正在做首页”这种模糊状态。例如练习用静态页面搭一个产品介绍页,不要一次做完导航、卡片、表单和页脚;可以本次只完成导航,并在记录里写明:已确认桌面宽度下链接可点,移动宽度下折叠菜单尚未处理。
这样做的结果是,下次恢复时不需要重新判断整体进度,直接从“移动宽度折叠菜单”开始。实施时建议在练习文件旁留一个纯文本状态文件,只写四行:本次完成的可验证结果、未完成的具体动作、下次第一步、已知但未处理的例外。不要写心得体会,也不要复制大段代码,状态文件的作用是让恢复成本降到最低。
例外情况是:如果本次练习本身依赖外部条件,比如需要等图片素材或需要对照某个已打开的参考页面,那么状态文件里要额外记下这个依赖,否则下次会卡在“为什么当时没继续”上。依赖没有解除前,不要开启新的练习单元,否则会累积多个半成品。
短断频繁时,把任务切得太碎反而会增加切换成本,因为每次都要重新选择练什么。更合适的做法是维持一条连续主线,但在每次被打断的瞬间,用一句话记下“回到这里时先做哪个动作”。这句话要具体到可执行,例如“把表单提交按钮的禁用状态补上”,而不是“继续做表单”。
恢复时先执行这句话对应的动作,再决定是否继续。这个动作的结果会告诉你上下文是否还在:如果两分钟内能顺利改完并看到预期变化,说明主线可以继续;如果连文件位置都要找很久,说明短断已经累积成事实上的长间隔,应改用上一节的单元切分法。也就是说,两种策略不是互斥的,而是根据恢复测试的结果动态切换。
假设你正在练习建站培训中的响应式布局,做到一半被叫走。记录方式A写“继续做响应式”,记录方式B写“已让卡片在窄屏变成单列,下一步检查图片是否溢出容器,未验证:超宽屏下卡片间距”。隔天回来,A需要重新浏览代码才能判断进度,B可以直接打开页面缩窄窗口,检查图片溢出。B的记录多花不到一分钟,却省掉了重新理解上下文的时间。
这个例子不说明哪种记录一定更好,而是说明:记录的价值取决于它能否直接触发一个验证动作。如果记录只描述状态而不指向动作,恢复时仍然要重新决策。因此每次中断前,至少留一个“下一步可验证动作”,它比完整的进度描述更有用。
恢复练习时,不要先整理笔记或重读教程,先做状态文件里写下的第一个动作。做完后根据结果决定:若动作完成且结果符合预期,继续原主线;若动作无法完成,说明记录缺少关键上下文,先补上下文再继续;若动作完成但结果不符合预期,则把差异写回状态文件,作为下一次练习的起点。这个流程的作用是把“恢复”本身变成一个可验证的小练习,而不是靠回忆硬接。
需要避免的一种情况是:中断后为了找回状态,重新从第一节教程看起。这会让练习永远停在开头,也无法暴露真正卡住的地方。只有在状态文件丢失、且无法从现有文件推断进度时,才值得回看教程中与当前动作直接相关的部分,并且看完后立即回到那个动作,而不是顺着教程继续往下学。