发布于 : Apr 26, 2023
不在本期内容中
这一条目不在当前版本的技术雷达中。如果它出现在最近几期中,那么它很有可能仍然具有相关参考价值。如果这一条目出现在更早的雷达中,那么它很有可能已经不再具有相关性,我们的评估将不再适用于当下。很遗憾我们没有足够的带宽来持续评估以往的雷达内容。
了解更多
Apr 2023
评估
和软件行业的许多人一样,我们一直在探索快速演进的 AI 工具,以帮助我们编写代码。我们看到很多人通过将实现代码输入 ChatGPT,然后请求其生成测试代码。但作为 TDD(测试驱动开发)的坚定支持者,我们并不想经常将可能包含敏感信息的实现代码输入到外部模型中,因此我们尝试了基于 AI 辅助的测试驱动开发的技术。在这种方法中,我们让 ChatGPT 为我们生成测试代码,然后由开发人员来实现功能。具体而言,我们首先在一个可在多个用例中重复使用的提示“片段”中描述我们使用的技术栈和设计模式。然后,我们描述我们想要实现的具体功能,包括验收标准。基于这些信息,我们要求 ChatGPT 生成在我们的架构风格和技术栈中实现这一功能的实现计划。一旦我们对这个实现计划进行了合理性检查,我们就要求它为我们的验收标准生成测试代码。
这种方法对我们来说效果出奇的好:它要求团队提供对其架构风格的简明描述,帮助初级开发人员和新团队成员编写符合团队现有风格的功能特性。这种方法的主要缺点是,尽管我们没有向模型提供源代码,但我们仍然向其输入了可能包含敏感信息的技术栈和功能描述。至少在这些AI工具的“商业版”面世之前,团队应确保与法律顾问合作,以避免任何知识产权问题。