用 AI 辅助写代码已经是常态了,先说说AI 带来的好处。 效率提升是实实在在的。日常开发里大量的增删改查、数据转换、单元测试等,以前得一行行手敲,现在给几句注释,它能直接生成结构完整的代码,绝大部分几乎不用调整就能用,重复性工作省了不少时间。另外 AI 生成的代码在格式上通常很规范,命名、缩进、换行这些基本不会出问题,那种变量名拼错、漏分号的小毛病也少了很多,代码的可读性整体上是有改善的。 要把 AI 用好还是需要注意很多地方的。 一个是 AI 偶尔会给出看起来合理、但实际有问题的逻辑。比如做数值比较的时候直接用等号、没考虑浮点数精度或者生成查询语句时直接拼接参数等。AI 不会主动提示你“这里需要小心”,而是会用很确定的语气把代码交出来,如果审查的人没留意,就可能把隐患带上去。 另一个是代码结构方面。AI倾向于一次性完成任务,不太会从整体去考虑扩展性和复用性,有时会出现一段逻辑在多个地方重复,或者把不同职责的代码塞在一起。短期能跑通,时间长了维护成本会慢慢上来。还有一点是用惯了AI后,发现碰到问题第一反应是丢给 AI,自己从头推理的耐心变差了,这个习惯可能会影响技术积累。 针对这些问题,我给自己定了几条用法: 先把 AI 当成一个效率工具,不是替自己做判断的。它给出的代码我会逐行过一遍,跟业务相关、跟安全相关的部分,一定搞清楚逻辑再提交,不直接照搬。 然后是把需求写清楚。以前可能随手敲一句“实现一个查询”,现在会多写几句,把参数怎么处理、异常返回什么、需不需要分页这些都列明白。需求写得越具体,它给出的代码偏离预期的概率越小。 最后是用测试兜底。核心函数都补上单元测试,正常路径跑一遍,边界值和异常情况再跑一遍。有几次就是测试把问题暴露出来了,省了后面排查的工夫。 总的来说,AI是个挺好用的辅助,日常能省不少力气,但代码质量的把控还是得靠自己。该审查的审查,该测试的测试,把这些习惯保持住,用它就是加分项。
