在程序開(kāi)發(fā)中,程序員每天都要和 Bug 打交道,對(duì)新手程序員而言,debug 是一件非常讓人頭疼的事情。好不容易寫(xiě)完一段代碼,一運(yùn)行,全是紅色,找了好幾圈,被幾個(gè)符號(hào)累瞎了眼。
而且不同的編程語(yǔ)言的錯(cuò)誤類(lèi)型也不同。比如 JavaScript 定義了一些錯(cuò)誤類(lèi)型:Error(錯(cuò)誤)、EvalError(全局錯(cuò)誤)、RangeError(引用錯(cuò)誤)、ReferenceError(參數(shù)錯(cuò)誤)、SyntaxError(語(yǔ)法錯(cuò)誤)、TypeError(類(lèi)型錯(cuò)誤)、URIError (編碼錯(cuò)誤)等;同樣 Python 中也有幾十種錯(cuò)誤類(lèi)型。
大家在學(xué)寫(xiě)代碼的同時(shí)應(yīng)該也學(xué)過(guò)一些解決 bug 的方法。比如,剛開(kāi)始寫(xiě)的代碼都比較簡(jiǎn)單,沒(méi)有太過(guò)復(fù)雜的邏輯與實(shí)現(xiàn),最直接的方法就是從頭逐行檢查,檢查的時(shí)候注意 error 中提到的問(wèn)題,是否括號(hào)少了另一半?是否哪個(gè)變量聲明錯(cuò)了等等。比如剛學(xué) C++ 的時(shí)候,出錯(cuò)時(shí)先檢查 ; 、{}、() 是不是都有;再熟練一些,代碼量增加,從語(yǔ)法錯(cuò)誤到邏輯錯(cuò)誤,大家會(huì)逐漸用到其他的方法或工具。有網(wǎng)友總結(jié)“初級(jí)碼農(nóng)靠編譯器,中級(jí)碼農(nóng)用調(diào)試器,中高級(jí)碼農(nóng)靠寫(xiě)日記,而高級(jí)碼農(nóng)靠冥想和頓悟”。
今天營(yíng)長(zhǎng)要給大家介紹一款可以幫助大家快速預(yù)測(cè)、分析 bug 原因的工具:code-with-ai。操作非常簡(jiǎn)單,只要兩步就可以給出可能存在的錯(cuò)誤及其可能性。
操作簡(jiǎn)單,只需兩步
1.把 error 描述復(fù)制粘貼到輸入框中
2.點(diǎn)擊搜索,一鍵即可。
無(wú)需登錄,即可使用。
工具地址:
https://code-with-ai.app.render.com
支持多語(yǔ)言
營(yíng)長(zhǎng)先是用 Python 語(yǔ)言簡(jiǎn)單檢測(cè)了一下效果,看看到底給出哪些參考結(jié)果,隨后又分別隨機(jī)挑選了不同語(yǔ)言的報(bào)錯(cuò)提示。
比如,用 Python 最簡(jiǎn)單的 print 語(yǔ)句試驗(yàn),如果我要輸出 AI科技大本營(yíng),正確的語(yǔ)句為print("AI科技大本營(yíng)");隨意更改語(yǔ)句中的 () 或 "",制造一些錯(cuò)誤,來(lái)看看 code-with-ai 會(huì)給出怎樣的分析結(jié)果:
print(AI科技大本營(yíng))
#去除 ""
可能有兩種原因,一是 implement 問(wèn)題,概率為 22%,二是 data structures,錯(cuò)誤概率 52%。
print("AI科技大本營(yíng))
#只有一個(gè) "
分析結(jié)果提示優(yōu)先注意 strings 錯(cuò)誤,其次是 data structures 錯(cuò)誤。
print("AI科技大本營(yíng)")
#英文括號(hào)改成中文括號(hào)
看了以上三個(gè)簡(jiǎn)單的試錯(cuò),對(duì) code-with-ai 的原理和功能大家應(yīng)該有了基礎(chǔ)的了解,通過(guò)給出的預(yù)測(cè),可以在相應(yīng)位置先從概率較高的問(wèn)題類(lèi)型開(kāi)始檢查。
接下來(lái)營(yíng)長(zhǎng)又隨機(jī)挑選了不同語(yǔ)言的問(wèn)題報(bào)錯(cuò):
C++ 報(bào)錯(cuò):
Java 報(bào)錯(cuò):
JS 報(bào)錯(cuò):
營(yíng)長(zhǎng)只是用最簡(jiǎn)單的代碼進(jìn)行測(cè)試,大家可以用自己項(xiàng)目中的 error 測(cè)試一下,根據(jù)概率提供的優(yōu)先級(jí)進(jìn)行快速分析。
關(guān)于作者
研發(fā)這個(gè)神奇工具,造福萬(wàn)位碼農(nóng)的作者是一位印度開(kāi)發(fā)者——Gaurav Arora,畢業(yè)于印度 Chandigarh PEC 理工大學(xué)。學(xué)習(xí)期間參與了多個(gè)編程和機(jī)器學(xué)習(xí)項(xiàng)目,并且是一名深度學(xué)習(xí)愛(ài)好者,熱衷于解決對(duì)數(shù)百萬(wàn)人有影響力的復(fù)雜問(wèn)題。
目前在高盛用戶體驗(yàn)組中擔(dān)任技術(shù)分析師,在高盛實(shí)習(xí)期間,為公司構(gòu)建和維護(hù) UI 工具包。也曾是創(chuàng)業(yè)項(xiàng)目 Researchshala 的聯(lián)合創(chuàng)始人,Researchshala 是一個(gè)在線平臺(tái),有 40 多個(gè)研究項(xiàng)目,將教授和研究實(shí)習(xí)生聯(lián)系起來(lái),幫助他們完成研究項(xiàng)目,有 90 多名學(xué)生在卡內(nèi)基梅隆大學(xué)、印度理工學(xué)院等大學(xué)的教授手下工作。
-
AI
+關(guān)注
關(guān)注
87文章
31044瀏覽量
269392 -
代碼
+關(guān)注
關(guān)注
30文章
4798瀏覽量
68715 -
BUG
+關(guān)注
關(guān)注
0文章
155瀏覽量
15680
原文標(biāo)題:AI找Bug,一鍵快速預(yù)測(cè)
文章出處:【微信號(hào):rgznai100,微信公眾號(hào):rgznai100】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論