睡不着,写一下最近ai coding的一个小心得:多抽取模块。

从原理上讲,有三个好处:

  1. 无论哪种ai编程工具,目前的基本逻辑还都是与代码文件交互(而不是二进制文件或者内存快照),单个文件的缩小,能有效降低上下文长度和修改的复杂度。

  2. 代码文件的路径和文件名,本质是对源码内容的一次信息压缩

想象一下,一个叫做messageService的庞大的文件,和分别叫做protocolParser/messageQueueReader/userUpdateMessageListener的三个文件相比,后者只要列出文件,就已经包含了丰富的业务信息,而大部分code agent都会自动或者半自动的携带文件列表信息。

3 更小规模的模块后期维护成本更低,一方面是依赖关系更明确,容易实现单元测试,另一方面以后丢弃这段代码也更简单。

[[eb1c03aa-4683-4204-8ae2-64039604b4a7|之前介绍过 A+A’的[vibe coding]方案]],即先实现初版、再优化,而不是期望通过调整提示词一次性完成功能。

目前对这个流程可以再做一下修改,变成Aa+a’,即先粗改+重构,再精修的方式,最终效果会好很多,也能交付可维护性更强的代码。


原文:睡不着,写一下最近a… - @axb的自我修养的微博 - 微博