背景
软件开发的本质,是将开发人员的思想,转换为机器中可执行的代码。准确和高效,是软件开发过程中永恒的目标。
在软件工程发展的历史长河中,效率提升始终是一条主线。从文本编辑器到各类强大的IDE,从单体系统到微服务架构,从瀑布式开发到敏捷研发,一代代工程师为了更快地实现软件价值而前赴后继,这才有了我们现在这个星河璀璨的智能互联世界。
近几年来,随着AI在软件开发场景被广泛运用,软件研发的效率提升,被按下了加速键。
最早出现的是AI代码补全工具,将深度学习应用于代码补全,提供单词或单行级别的补全建议。后来以GitHub Copilot的出现为标志,AI编程助手可以根据注释生成整个函数,结合上下文推断开发者意图。这两年随着Vibe Coding的出现,开发者通过自然语言描述软件意图,由AI去完成具体实现,在一轮轮迭代对话中完成开发目标。
Vibe coding对于个人项目或者一次性项目,是非常合适的提效方式,但是对于企业级场景的代码开发,由于缺乏规范和约束,难以满足企业级代码可靠性和可维护性的要求。
于是规范驱动编程(Spec-Driven Development,SDD)被提出,其核心思想在于,在领域规范的指导下,通过多轮对话迭代,生成符合企业标准的代码。不同于以代码为中心的传统开发模式,SDD把规范(Spec)作为开发过程中的核心资产。