AWS在re:Invent大会上公布开发工具Amazon Q Developer最新版本,增加代理人能力及转换旧程序的功能。

Amazon Q Developer首先是今年4月正式推出,陆续加入AWS CLI、SageMaker Studio、CloudShell及内置聊天(inline chat)等能力。Q Developer的代理人可即时提供程序代码建议、输入提示生成程序代码(/dev)、转换(/transform)旧Java程序等开发协助。AWS今天宣布为Q Developer代理人添加3项代理人(agent)功能。

3项代理人功能分别是文件(/doc)、品质审查(/review)和测试(/test)。首先,开发人员可以Q Developer在属意的IDE中生成文件,像是readme文件或数据流程图。其次,他们可用Q Developer侦测及修正IDE或GitLab存储库中程序品质的问题,包括程序代码异味(code smells)、反模式(anti-patterns)、违反命名规则、bug、逻辑错误、程序代码重复、不良文件文件或安全漏洞。在查看建议后开发人员可选择接受或拒绝。

最后,Q Developer还能自动生成单元测试,修正测试涵盖范围。它会生成简单用例,例如边界条件、空值、差1(off-by-1)情况以及检查多个输入类型。Amazon Q Developer生成的单元测试会加入相关的测试文件进行调试。开发人员可以先预览差别,再决定是接受或拒绝产出的单元测试。Amazon Q Developer 3种开发代理人功能,现在已于所有有Q Developer的AWS区域上线。

Q Developer还添加转换(transform)旧应用程序的功能。最新支持的旧应用程序类型包括.NET、大型主机和VMware VM程序.方便企业将本地部署的.NET应用和VMware负载搬移到AWS云计算,或将大型主机程序现代化(modernization)。

它会自动化带领用户走完程序代码现代化的每个步骤,包括资产发现、codebase分析、波浪(wave)分析、程序重构、解决不兼容及实例网络自动化。例如用户要求Q Developer创建大型主机程序现代化过程,Q Developer在规划时,创建了4个阶段,包括启动现代化、分析程序代码、拆解程序、规划搬移波浪(migration wave)、反复式规划及重构(refactoring)。它还会主动要求开发人员从提示提供特殊资讯,像是输入.NET版本,以及选择想转换的程序库。Q Developer还提供仪表板,以便关注整体转换的过程,包括网络部署和特定台服务器状态。

Q Developer 3个转换功能现在已经以预览版在AWS上线,但欲试用的用户必须具备Amazon Q Developer Pro订阅。图片来源/AWS