前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >AI找Bug,一键快速预测

AI找Bug,一键快速预测

作者头像
AI科技大本营
发布2019-05-06 10:41:28
7520
发布2019-05-06 10:41:28
举报

作者 | Jane

出品 | AI科技大本营(ID:rgznai100)

在程序开发中,程序员每天都要和 Bug 打交道,对新手程序员而言,debug 是一件非常让人头疼的事情。好不容易写完一段代码,一运行,全是红色,找了好几圈,被几个符号累瞎了眼。

而且不同的编程语言的错误类型也不同。比如 JavaScript 定义了一些错误类型:Error(错误)、EvalError(全局错误)、RangeError(引用错误)、ReferenceError(参数错误)、SyntaxError(语法错误)、TypeError(类型错误)、URIError (编码错误)等;同样 Python 中也有几十种错误类型。

大家在学写代码的同时应该也学过一些解决 bug 的方法。比如,刚开始写的代码都比较简单,没有太过复杂的逻辑与实现,最直接的方法就是从头逐行检查,检查的时候注意 error 中提到的问题,是否括号少了另一半?是否哪个变量声明错了等等。比如刚学 C++ 的时候,出错时先检查 ; 、{}、() 是不是都有;再熟练一些,代码量增加,从语法错误到逻辑错误,大家会逐渐用到其他的方法或工具。有网友总结“初级码农靠编译器,中级码农用调试器,中高级码农靠写日记,而高级码农靠冥想和顿悟”。

今天营长要给大家介绍一款可以帮助大家快速预测、分析 bug 原因的工具:code-with-ai。操作非常简单,只要两步就可以给出可能存在的错误及其可能性。

  • 操作简单,只需两步

1.把 error 描述复制粘贴到输入框中

2.点击搜索,一键即可。

  • 无需登录,即可使用。

工具地址: https://code-with-ai.app.render.com

  • 支持多语言

营长先是用 Python 语言简单检测了一下效果,看看到底给出哪些参考结果,随后又分别随机挑选了不同语言的报错提示。

比如,用 Python 最简单的 print 语句试验,如果我要输出 AI科技大本营,正确的语句为 print("AI科技大本营");随意更改语句中的 () 或 "",制造一些错误,来看看 code-with-ai 会给出怎样的分析结果:

print(AI科技大本营) #去除 ""

可能有两种原因,一是 implement 问题,概率为 22%,二是 data structures,错误概率 52%。

print("AI科技大本营) #只有一个 "

分析结果提示优先注意 strings 错误,其次是 data structures 错误。

print("AI科技大本营") #英文括号改成中文括号

看了以上三个简单的试错,对 code-with-ai 的原理和功能大家应该有了基础的了解,通过给出的预测,可以在相应位置先从概率较高的问题类型开始检查。

接下来营长又随机挑选了不同语言的问题报错:

C++ 报错:

Java 报错:

JS 报错:

营长只是用最简单的代码进行测试,大家可以用自己项目中的 error 测试一下,根据概率提供的优先级进行快速分析。

关于作者

研发这个神奇工具,造福万位码农的作者是一位印度开发者——Gaurav Arora,毕业于印度 Chandigarh PEC 理工大学。学习期间参与了多个编程和机器学习项目,并且是一名深度学习爱好者,热衷于解决对数百万人有影响力的复杂问题。

目前在高盛用户体验组中担任技术分析师,在高盛实习期间,为公司构建和维护 UI 工具包。也曾是创业项目 Researchshala 的联合创始人,Researchshala 是一个在线平台,有 40 多个研究项目,将教授和研究实习生联系起来,帮助他们完成研究项目,有 90 多名学生在卡内基梅隆大学、印度理工学院等大学的教授手下工作。

最后附上作者个人 Github 地址: https://github.com/goru001

今天你的Bug都解决了吗?欢迎大家试用并交流~

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-01-27,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 AI科技大本营 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档