本文章選自《saas軟件工程》,感覺(jué)甚是有用耙箍,留存方便以后查詢(xún)辩昆。
ruby程序
一. 錯(cuò)誤或者某種異常導(dǎo)致程序無(wú)法繼續(xù)執(zhí)行
- 利用自動(dòng)縮進(jìn)和語(yǔ)法高亮顯示來(lái)確定是否是由于格式問(wèn)題引發(fā)
- 查看日志文件, log/development.log
二. 應(yīng)用程序運(yùn)行但是產(chǎn)生了一個(gè)不正確的調(diào)試結(jié)果或者行為
- 插入儀器 ——能夠給出額外的報(bào)告砚尽,記錄程序運(yùn)行期間的不同點(diǎn)處重要的變量值
- 在視圖上顯示對(duì)象的詳細(xì)描述 @movie.inspect
- 在控制器方法中通過(guò)引發(fā)一場(chǎng)來(lái)“停止演示”必孤,異常消息顯示的是你要進(jìn)行檢查的值敷搪,如通過(guò)
raise params.inspect
查看控制器方法內(nèi)params哈希表的詳細(xì)值,rails會(huì)給出請(qǐng)求引發(fā)的異常信息的頁(yè)面购啄。
用logger.debug(message)把消息打印到日志
在模型和控制器中的logger都是可用的狮含,并且可以記錄各種緊急的消息使用交互式調(diào)試器
通過(guò)gemfile來(lái)安裝ruby-debug19 gem,在rails應(yīng)用程序中使用調(diào)制器
rails server --debugger
在想停下來(lái)的地方插入語(yǔ)句debugger
三在調(diào)試代碼的時(shí)候碰到問(wèn)題有一個(gè)原則冰评,叫做RASP,即Read-Ask-Search-Post(讀問(wèn)搜發(fā))
- Read 就是查看報(bào)錯(cuò)信息包括控制臺(tái)和日志文件中的
- Ask 就是詢(xún)問(wèn)自己周?chē)耐瑢W(xué)甲雅,老師
- Search 就是在網(wǎng)上通過(guò)各種途徑進(jìn)行搜索
- Post 就是講自己的問(wèn)題以及解決措施發(fā)布在網(wǎng)上坑填,方便自己后期查看或者方便別人查看脐瑰。
最后自己想補(bǔ)充說(shuō)明的一點(diǎn)就是苍在,無(wú)論是啥寂恬,要對(duì)自己發(fā)表的東西負(fù)責(zé),要發(fā)布真正自己嘗試并且成功的解決措施酷鸦,這是一個(gè)良心活井佑。
從各個(gè)地方整理出自己需要的各種信息眠寿,然后用到自己的學(xué)習(xí)生活中盯拱,善莫大焉狡逢!