iT邦幫忙

2022 iThome 鐵人賽

DAY 27
0
Software Development

如果可以,我想用30天的時間打造一間抵霸閣系列 第 27

[Day27]抵霸閣-程式中常見的蟲子

  • 分享至 

  • xImage
  •  

code中常見的bug就跟生活中常見的蟲一樣神出鬼沒
讓你很煩惱抓不到的時候晚上會不會跑出來咬你
不過bug也是有分種類的
容我娓娓道來

1. 編譯期間的錯誤(Complie Errors)
像是語法錯誤
因為敲鍵盤時沒注意到一次按了太多鍵
或是"O","o","0"不分 所以肉眼也沒檢查出來
造成無法編譯成功的問題
又或者像是該有結尾符號的地方沒加(真的超常漏掉)
或是括號數量對不上 傳入傳出參數數量對不上
也有可能是誤用關鍵字
或大小寫沒寫對
但這些都是小事
畢竟編譯器通常都會告訴你第幾行出了什麼問題
像是在錯的地方用紅色毛毛蟲標註啦
或是直接打一個大叉叉給你看

2. 執行期間的錯誤(Run-time errors)
來到這個階段的錯就代表已經編譯成功了
這個關卡也算是大魔王
因為平常上班就是一直下中斷點觀察變數值
找到底程式的exception從哪來&為什麼會這樣
老師通常會用除數為0的方式做示範
還有像是程式要開啟的檔案已不存在之類的
所以為了不讓程式被卡住就要做好例外處理
讓前端可以不要看到一堆錯誤代碼
畢竟客戶也看不懂這要幹嘛

3. 邏輯錯誤(Logic Errors)
這個蟲子最難找!!
因為只能靠自己去發現
不會像前兩者有人會主動提醒你有錯誤
因為主要是執行出來的結果不如預期
可是預期的結果是自己才知道才會寫出邏輯告訴程式
此時建議畫出流程圖
去釐清各種可能的走法
找到問題節點後就會比較好處理了(吧?
初學最常遇到的就是寫出個無窮迴圈
讓電腦很當
所以也要特別注意
尤其當專案越大 若留下病根讓蟲越繁衍越多
後果將不堪設想...


上一篇
[Day26]抵霸閣-軟體開發實用工具推薦(無料)
下一篇
[Day28]抵霸閣- 初步認識正則表達式
系列文
如果可以,我想用30天的時間打造一間抵霸閣30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言