写点什么

揭秘高效编程“武功秘笈”,手把手带你用 Amazon Q 写一波!

  • 2023-11-22
    北京
  • 本文字数:3442 字

    阅读完需:约 11 分钟

大小:1.59M时长:09:17
揭秘高效编程“武功秘笈”,手把手带你用 Amazon Q 写一波!

随着今年 AI 技术的大火,越来越多的领域正在接受和利用这项强大的科技,以实现更高效、更智能的工作方式。在软件开发领域,AI 技术更是为我们的工作带来了前所未有的变革;从自动代码生成到智能编程助手,AI 正在逐步改变开发者的工作方式,提高开发效率和代码质量。


对于程序员传统的开发来说,完成一些业务逻辑代码或者特定代码,需要自己从 0 手动去敲代码、查 Bug、找思路、做优化,这个过程会需要耗费较多的时间和精力来完成。但是在今天,时代已经发生了变革。


亚马逊云科技推出了一款前沿的 AI 编程助手——Amazon CodeWhisperer。这款工具利用了先进的深度学习技术,通过训练几十亿行代码,能够快速理解开发者的需求,提供即时的、强大的代码建议和错误检测,使开发者能够更快、更安全地构建应用程序。


为了大家更好地了解和掌握 Amazon CodeWhisperer,在本文中,我将带你手把手沉浸式体验一下 Amazon CodeWhisperer 的魔力和强大之处!


01 Amazon CodeWhisperer 功能概览


可能有些小伙伴对 Amazon CodeWhisperer 的具体的能力还不太清楚,这里先给大家详细介绍一下 Amazon CodeWhisperer 拥有的一些实用和强大功能。用上这些功能,再也不怕被“卷”开发效率了!

1.1 强大的代码建议


Amazon CodeWhisperer 是基于数十亿行代码训练而成的,所以它能够理解用自然语言编写的各种代码,并且可以实时地生成多个代码建议来提高开发人员的工作效率。该服务直接在集成式开发环境(IDE)的代码编辑器中提供针对完整函数和逻辑代码块(通常由多达 10–15 行代码组成)的建议。

并且不用担心它生成的代码不符合你的代码风格,Amazon CodeWhisperer 将学习你的代码写法与风格,遵循你的设定的风格和命名规则。

1.2 支持多种语言与 IDE


在公司开发中,可能每个程序员们开发的语言或者 IDE 都是不大一样的,但是请放心,目前市面上主流的各类开发语言,例如 Python、Java、Go、Rust、PHP、C++、C、JavaScript、TypeScript 等等都是支持的!并且支持各种主流 IDE 工具,IDEA、Pycharm、VS Code 等等这些,Amazon CodeWhisperer 都支持。


还有的朋友可能会说,如果是 SQL Boy 呢?能用 Amazon CodeWhisperer 吗?我的回答是,那是必须的!

1.3 安全扫描


在写完代码之后,可以使用 Amazon CodeWhisperer 帮助我们进行代码的安全扫描,它将帮助我们分析出代码漏洞,并且会针对业务代码中的漏洞提出更改优化建议与代码。这个功能很实用,能够帮助我们排除不必要的安全隐患。

02 沉浸式体验使用 Amazon CodeWhisperer 实战开发代码


相信大家看到这里已经很期待 Amazon CodeWhisperer 的实战表现了。我将为大家展示下 Amazon CodeWhisperer 是如何智能地帮助开发者们在日常生活中,提高学习与工作效率的!


首先,我们使用 Amazon CodeWhisperer 来帮助快速构建一些常见算法及代码。在这里我选择 Python 语言。

2.1 Pycharm 中快速导入 Amazon CodeWhisperer


在 Pycharm 的设置 Settings 中,找到插件,然后搜索 “Amazon Toolkit”。点击 Install,等待下载完成后,重启 Pycharm 即可。



然后我们在插件中进一步处理,使用个人亚马逊云科技账号去使用 Amazon CodeWhisperer。



我们需要将这个代码贴进来进行验证,并根据后续的操作进行邮箱注册创建 Amazon Builder 账号即可。



一切就绪之后会提出弹窗:



当在 Pycharm 中出现如下界面之后,就代表能够顺利使用 Amazon CodeWhisperer 了。



话不多说,开始用起来吧!

2.2 使用 Amazon CodeWhisperer 快速构建 Python 代码


我们先来使用 Amazon CodeWhisperer 写一个简单的冒泡排序试试效果。首先,输入我们的注释,这样 Amazon CodeWhisperer 就知道要干什么了;然后我们输入 import,就可以看到 Amazon CodeWhisperer 自动帮我们补全了 random 函数。



看到上面这个图,或许你会以为 Amazon CodeWhisperer 只是简单补齐一行代码,千万别小看它了,接着往下看:



不单单只是那一行,Amazon CodeWhisperer 可以直接帮我们补完所有实现代码!

这里我们选择了方案 2 中的代码补全,然后当输入符到达代码最后一行时,新的一行就会自动跳出:



也就是 print(a[i],end = ' ') 这一行是在我没有给出任何指令的情况下,Amazon CodeWhisperer 自动提示是否需要补充。如果需要,只需按下 Tab 回车键或者鼠标点击 Insert Code 按钮即可。


与其他的 AI 代码助手不同的是,Amazon CodeWhisperer 是真正能够进行“预判式”的辅助你写代码,并且最开始的一切只是“源于”一个不起眼的小注释,Amazon CodeWhisperer 通过这个注释已经帮我们算好了接下来 2-3 个步骤。是不是很高效?


测试了一下,使用 Amazon CodeWhisperer 写冒泡排序的时间,只需要按下三次 Tab 键即可,大概是 2s 的时间!如果按正常编写的速度,只使用 Pycharm 自带的代码 Tab 补写,就算手速再快,也需要大概 15-20s 左右。2s 相比于 20s,是近乎 10 倍的时间开销差距。Amazon CodeWhisperer 是真正意义上做到了帮助开发者节省时间,用户体验感 Max!


除了上面突出的“预判式”速度优势外,Amazon CodeWhisperer 不仅仅只是提供一种代码思路,而是提供了三种以上的代码建议,能够让我们有多种选择。


很明显,我们能够根据具体代码的开发需求以及个人习惯进行选择,可以说是把个性化体验拉满了。简单快速易上手,难度一点都没有,还不快速速用上 Amazon CodeWhisperer?

2.3 Amazon CodeWhisperer 支持各种领域方向的代码编写


可能有开发者朋友会觉得,上面举的例子太简单了,还是对 Amazon CodeWhisperer “超级魔力”看的不过瘾。那我们来点“高质量”的“狠货”一起试试吧!


”狠货“的情况是这样:前两天,一个还在读研的同学在打全国研究生数学建模竞赛问我,如何用 Python 写一些高效的数学算法模型,例如二维马尔科夫链这种。我当时查了很多资料,东拼西凑给同学发了一份二维马尔科夫链算法模型的代码。只能说短短三四十行的代码至少花了我两三个小时,而且做的很难受,很心累。


而如今,我用 Amazon CodeWhisperer 来试试看看需要多久,或者看看写出算法模型的难度。

首先,还是按照上面一样写个注释,让 Amazon CodeWhisperer 明白我要做什么。


可以看到,如下图,我只是简单输入了 import math,Amazon CodeWhisperer 就已经帮我补全了其他所需要的常见数学计算包。



下一步,我继续在注释中写明我需要做到哪些事情。比方说我想继续写一个状态转移方程,用来求马尔科夫链模型的概率矩阵。



可以看到,Amazon CodeWhisperer 直接提供好了一个初始矩阵给我,非常的方便。

我们再进一步提出要求,注释中写清楚即可。



补全之后,下一步 Amazon CodeWhisperer 又根据新的注释帮我进行了代码建议,不仅十分专业,且代码风格看起来赏心悦目,非常整齐和清爽。



然后我们简单对状态矩阵进行判断返回即可。根据 Amazon CodeWhisperer 的代码建议补全如下。



短短三五分钟,它就能够大概地把这种算法模型的架构搭出来,省去了很多不必要的麻烦。这说明,Amazon CodeWhisperer 是真的能够覆盖很多场景,就连高级的数学知识、数据科学类方面的代码,也是能够进行补全编写的。在简单易上手的基础上,Amazon CodeWhisperer 主打的就是一个全能,能够覆盖多领域多方向需求

2.4 Amazon CodeWhisperer 的安全扫描功能


我找了一份研究生数学建模的参考示例代码,按照惯例,参考示例代码应该是没有问题的。我们一起看看 Amazon CodeWhisperer 的安全扫描会不会提出什么安全漏洞建议:




结果显示,扫描一切正常,说明这份参考示例代码是没有问题的,符合预期。


03 Amazon CodeWhisperer 总结


通过上面的讲解和实践,相信各位开发者朋友肯定很心动了。还等什么,赶紧用起来吧!

总结一下 Amazon CodeWhisperer 的优点:


  • 对小白友好,不存在什么引入难度。大家可以看到 Amazon CodeWhisperer 导入及使用大概两分钟就能操作完,十分便捷,不需要什么时间。

  • 上手简单。其实使用 Amazon CodeWhisperer 就几个快捷键,Tab 这种,使用起来也是完全没有任何的难度。

  • 覆盖面广,功能全面。可以看到,对于一些高级数学知识,它也能够很快的给出代码建议。这一点非常实用,因为在开发中我们会遇到各种各样的问题与需求,代码助手的全面性决定了是否能够帮助更多的开发者。所以我觉得 Amazon CodeWhisperer 是非常优秀的,功能全面无死角。

  • 维护了代码开发安全。可能很多刚工作几年的开发者,对于代码安全方面并不是非常有经验,但 Amazon CodeWhisperer 刚好就能够有效识别和修复潜在的安全漏洞,这是非常重要的一个功能。


综上所述,我觉得 Amazon CodeWhisperer 是一款各方面都非常不错的 AI 代码助手!

2023-11-22 10:428721

评论

发布
暂无评论
发现更多内容

详解!视频直播源码布谷科技平台搭建开发:录制功能

山东布谷科技

软件开发 视频直播 源码搭建 短视频直播源码 视频录制

明晚直播:可重构计算芯片的AI创新应用分享!

飞桨PaddlePaddle

人工智能 百度 paddle 飞桨 百度飞桨

Sugar BI:大模型时代的智能 BI

Baidu AICLOUD

BI 数据智能

科研类项目核算的“法、术、器”(二)

用友BIP

项目管理 科研项目

源码解析Collections.sort ——从一个逃过单测的 bug 说起 | 京东云技术团队

京东科技开发者

排序算法 源码解读 企业号 7 月 PK 榜 Collections.sort

从分片传输到并行传输之大文件传输加速技术

镭速

大文件传输

浅聊一下大模型

鲸品堂

大模型训练 大模型

火山引擎DataLeap的Data Catalog系统公有云实践 (上)

字节跳动数据平台

大数据 数据中台 数据治理 数据安全 企业号 7 月 PK 榜

中文人物关系知识图谱(含码源):中文人物关系图谱构建、数据回标、基于远程监督人物关系抽取、知识问答等应用.

汀丶人工智能

人工智能 nlp 知识图谱 智能问答

动态QPS压测模型【Go语言】

FunTester

基于因果关系知识库的因果事件图谱构建

汀丶人工智能

人工智能 自然语言处理 知识图谱

万字长文浅析配置对MySQL服务器的影响 | 京东物流技术团队

京东科技开发者

MySQL 数据库 服务器 企业号 7 月 PK 榜 MySQL服务器

Docker 入门教程(简明易懂、零基础篇)

搞大屏的小北

Docker 容器 Docker-compose 入门 Docker 镜像

2023年广西等保测评机构名单看这里!新增一家哦!

行云管家

广西 等级保护 等保测评

HDMI接口需注意的PCB可制造性设计问题

华秋PCB

接口 工具 PCB PCB设计 可制造性

支付宝小程序云李铮:科技赋能,敏捷增长

TRaaS

支付宝小程序 小程序云开放 蚂蚁

一种配置化的数据脱敏与反脱敏框架实现 | 京东云技术团队

京东科技开发者

数据安全 脱敏 数据脱敏 企业号 7 月 PK 榜

揭秘ChaosBlade CPU故障:实现CPU故障的黑科技

柠檬汁Code(binbin0325)

源码分析 cpu 混沌工程 ChaosBlade 故障模拟

广东省《5A物理抗菌纺织品》团体标准颁布

极客天地

KaiwuDB 资深解决方案专家周幸骏:打造核心时序引擎,释放数据新价值

KaiwuDB

时序数据 KaiwuDB

数据库集群方案详解

KaiwuDB

KaiwuDB 数据库集群技术

超强阵容!HarmonyOS极客马拉松2023专家评审团来袭!

HarmonyOS开发者

HarmonyOS

618技术揭秘 - 大促弹窗搭投实践 | 京东云技术团队

京东科技开发者

前端 弹窗 xview 企业号 7 月 PK 榜

基于开源IM即时通讯框架MobileIMSDK:RainbowChat v9.0版已发布

JackJiang

网络编程 即时通讯 IM

中小微企业选择哪家云管平台好?理由有哪些?

行云管家

云计算 云管平台 云管理

飞桨大模型分布式训练技术

Baidu AICLOUD

飞桨 百度百舸 AI 大底座

Coral Finance 将为 Zepoch 节点空投,Nautilus生态空投季开启

西柚子

2023开源数据库排行榜发布,“新晋黑马”瀚高IvorySQL跻身三十强

极客天地

揭秘高效编程“武功秘笈”,手把手带你用 Amazon Q 写一波!_亚马逊云科技_我不是码神_InfoQ精选文章