[請益] BUG少的程式 通常有什麼特色?

看板Soft_Job (軟體人)作者 (皮爺)時間14年前 (2012/04/26 19:54), 編輯推噓9(9020)
留言29則, 14人參與, 最新討論串1/10 (看更多)
大家好 個人經驗很淺,只寫過小型的 web 應用 很弱小很菜,一直以來深受bug所苦 從最開始亂寫,到後來聽了鄉民的意見,開始摸設計模式 設計模式確實有效的解決我原本混亂的撰碼習慣 而我自己也在黑暗中一邊摸索一邊嚐試修正 不過 即使一邊寫一邊提醒自己「不要亂寫不要亂寫不要亂寫」 還是會有疏忽的地方 每次都要花很多時間在完工之後的測試和bug修正 甚至會有花在測試的時間比動手寫的時間還多的狀況!! 我很想知道,bug少的程式究竟有些什麼樣的特質 而產出這些好程式的人,又是因為什麼樣的條件使他們手法漂亮? 請各位前輩指點,也請盡量講得淺顯一點 感謝!!! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.44.11.80

04/26 19:57, , 1F
有興趣可以研究一下TDD
04/26 19:57, 1F

04/26 20:02, , 2F
事前花多一點時間規劃,能夠有效的降低bug
04/26 20:02, 2F

04/26 20:02, , 3F
DP不是重點,重點是你對於程式花多少時間規劃
04/26 20:02, 3F

04/26 20:03, , 4F
如果你都不先規劃,直接邊寫邊想,當然錯誤一堆
04/26 20:03, 4F

04/26 20:05, , 5F
對耶 邊寫邊想確實是個很重大的盲點@@ 我一直沒注意到
04/26 20:05, 5F

04/26 20:10, , 6F
邊寫邊想還好吧,寫->重構->寫->重構 很常見阿
04/26 20:10, 6F

04/26 20:11, , 7F
04/26 20:11, 7F

04/26 20:11, , 8F
可以去看看Unit Test
04/26 20:11, 8F

04/26 20:28, , 9F
感謝你們XD
04/26 20:28, 9F

04/26 20:52, , 10F
單元測試 或是從單元開始寫起 等於邊寫邊測了
04/26 20:52, 10F

04/26 21:37, , 11F
對於要寫的東西已經熟到一個不行~那邊寫邊想大概沒啥問題~
04/26 21:37, 11F

04/26 21:38, , 12F
因為整個架構已經在腦海裡了~但是不熟的話最好不要嘗試這
04/26 21:38, 12F

04/26 21:39, , 13F
樣玩~很容易忘東忘西就算了~要是某個必要功能和已成型的架
04/26 21:39, 13F

04/26 21:41, , 14F
構不相容、效能調不起來~不就又要浪費時間?
04/26 21:41, 14F

04/26 22:05, , 15F
沒錯 邊寫邊忘記的問題確實存在 我之前的解決方法是開場
04/26 22:05, 15F

04/26 22:05, , 16F
先把輪廓寫完 一邊寫一邊註解備忘 再深入細寫
04/26 22:05, 16F

04/26 22:06, , 17F
這樣讓我避掉了一些過去會發生的錯誤@@
04/26 22:06, 17F

04/26 22:09, , 18F
建議你先看看http://ppt.cc/v-dV有中文版
04/26 22:09, 18F

04/26 22:30, , 19F
我DP也是讀他們家的書XD
04/26 22:30, 19F

04/27 05:13, , 20F
用的人少!!!
04/27 05:13, 20F

04/27 11:35, , 21F
加了sleep(100)之後bug就解了 請問我該不該加呢?
04/27 11:35, 21F

04/27 11:36, , 22F
至於100這個值哪來的 就隨便try出來的
04/27 11:36, 22F

04/27 21:25, , 23F
bug 少的程式最大的特色就是都由關心品質的人寫出來的
04/27 21:25, 23F

04/28 00:08, , 24F
建議去看Code Craft,怕英文的話有簡中也有繁中
04/28 00:08, 24F

04/28 00:09, , 25F
一開始的"防禦性編程",就是寫出健壯性程式碼的原則
04/28 00:09, 25F

04/28 00:41, , 26F
感謝樓上!!每次來到本板都收穫很多!!
04/28 00:41, 26F

04/28 03:59, , 27F
系統設計Top-Down,程式施做Bottom-Up
04/28 03:59, 27F

04/29 23:04, , 28F
自己先把單元測試案例寫出來之後再開始寫程式
04/29 23:04, 28F

04/29 23:04, , 29F
這樣可以防止你程式寫完之後你只會針對合理的case測試
04/29 23:04, 29F
文章代碼(AID): #1FcJU4P8 (Soft_Job)
討論串 (同標題文章)
文章代碼(AID): #1FcJU4P8 (Soft_Job)