iT邦幫忙

2023 iThome 鐵人賽

DAY 11
0

Yes

Design by Contract

除了單元測試,還有另一種方式,也可以在程式邏輯有誤時,幫你主動抓出來。這是一種設計風格:依合約設計(Design by Contract)。

舉例,今天當一段程式在某種情況下一定不會 work 時,我們會做的事就是跟呼叫端說好,這種情況你不能來呼叫我。此時當我被呼叫了,如果我採用 Design by Contract 設計,那麼所有會造成後續出錯或是有錯誤表現的場景就都會被我排除掉了。

Design by Contract 在當代程式設計中並不流行,主因之一還是語言不支援。

本篇將試著用 Java 做出一個簡單的 Desing by Contract 工具,並用它來檢查計算 odd 的 pre-condition。


上一篇
Day 10 重構出輪帶表與盤面物件
下一篇
Day 12 Random 與 Dependency Inversion
系列文
『請你跟我這樣做』- 30 天 TDD 出一個 SLOT 算分器30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言