首页 > IT业界 > 正文

开发者福利!一文入门亚马逊云科技基于机器学习的代码生成器Amazon CodeWhisperer

2023-09-18 16:23:28  来源:

摘要:开发者福利!一文入门亚马逊云科技基于机器学习的代码生成器Amazon CodeWhisperer
关键词: 亚马逊云科技
 Amazon CodeWhisperer是亚马逊云科技出品的一款基于机器学习的通用代码生成器,可实时提供代码建议。类似Cursor和Github Copilot编码工具。在编写代码时,它会自动根据您现有的代码和注释生成建议。从单行代码建议到完整的函数,它可为您提供各种大小和范围的个性化建议。Amazon CodeWhisperer还可以扫描您的代码以突出显示和定义安全问题。

 Amazon CodeWhisperer目前已支持近15种变种语言:Python、Java、java script、TypeScript、C#、Go、Rust、PHP、Ruby、Kotlin、C、C++、Shell脚本、SQL和Scala,以及主流的IDE开发工具:包括VS Code、IntelliJ IDEA和AWS Cloud9。

 

Amazon CodeWhisperer安装

 以IDEA2022安装为例:

1.在IDEA中打开配置窗口,选择Plugins,搜索"AWS Toolkit",点击Install,点击OK按钮。

2.安装完之后重启IDEA。

3.打开AWS Toolkit视图(菜单View/Tool Windows/AWS Toolkit),点击"Developer Tools"tab页面,选择“CodeWhisperer/Start"。

4.弹出的窗口中选择“Use a personal email to sign up and sign in with AWS Builder ID",点击“Connect”按钮。

5.在弹出的窗口中,选择“Open and Copy Code”。

6.此时会在浏览器中打开⼀个页面,按ctrl-v粘贴code值,点击“Next“。

7.输⼊邮箱地址,点击"Next",。

8.输⼊名字,点击“Next”,CodeWhisperer会向邮箱中发送⼀个验证码。

9.打开邮箱,可以看到验证码,复制验证码,粘贴到输入框,点击“Verify”按钮。

10.设置密码,点击“Create AWS Builder ID“。

11.在最后⼀个页面中点击“Allow”按钮。

12.出现提示后,即表示注册AWS builder ID成功。

 

Amazon CodeWhisperer使用

 新建⼀个类,写出冒泡排序的注释,代码如下:

\

 可以看到右下角的Amazon CodeWhisperer图标前⾯有⼀个圈,表示正在生成代码中。代码生成完毕,会出现如下界⾯:

\

 可以看到,Amazon CodeWhisperer已经生成了代码,此时可以按下Tab键确认代码,也可以点击"Previous"或"Next"切换不同的代码,最后按Tab键确认。生成函数名以后,还可以生成函数体。最终,生成的代码是这样的:

\

 注释写的越精确,生成的代码质量越好。当然,Amazon CodeWhisperer生成的代码并不总是正确或最优,需要视情况进进修改或优化。

 

Amazon CodeWhisperer使用感受

 Amazon CodeWhisperer能帮助初学者面对不那么熟悉的编程语言或开发框架时,快速学习常用的接口调用方式和简单的实现方案。这意味着我们可以不用为了某些基础问题反复翻找API手册,或体验CSDN这样的技术博客网站的层层传送门。

 Amazon CodeWhisperer可以帮助我们在不熟悉的领域快速上手,只需要一些注释便可快速生成部分业务逻辑,然后进行测试。当然,最终代码的可靠性还是需要开发者人为辨别和控制。

 Amazon CodeWhisperer可以在重复性劳动时显著提升效率。比如你需要写一大堆单元测试,它们无法靠复制/粘贴批量生成,同时有一些细微的逻辑变化需要处理。又或是你需要开发一些重复性功能,比如批量声明一些数据类型好几十次。这时Amazon CodeWhisperer补全的代码往往很可靠。

 Amazon CodeWhisperer或许并不能承载类似“AI即将取代程序员”的想象,但在当下,它无疑是程序员的好帮手。作为辅助,它提供的补全并没有智能到让完全不会编程的用户完成开发,但也并不只是简单的提示工具。合理运用Amazon CodeWhisperer能够为开发者的学习成长带来很大帮助。


第三十八届CIO班招生
国际CIO认证培训
首席数据官(CDO)认证培训
责编:baxuedong

免责声明:本网站(http://www.ciotimes.com/)内容主要来自原创、合作媒体供稿和第三方投稿,凡在本网站出现的信息,均仅供参考。本网站将尽力确保所提供信息的准确性及可靠性,但不保证有关资料的准确性及可靠性,读者在使用前请进一步核实,并对任何自主决定的行为负责。本网站对有关资料所引致的错误、不确或遗漏,概不负任何法律责任。
本网站刊载的所有内容(包括但不仅限文字、图片、LOGO、音频、视频、软件、程序等)版权归原作者所有。任何单位或个人认为本网站中的内容可能涉嫌侵犯其知识产权或存在不实内容时,请及时通知本站,予以删除。