iT邦幫忙

2019 iT 邦幫忙鐵人賽

DAY 18
0

條件式中的條件順序

以下兩段程式碼,哪個比較好讀:

if (length >= 10)

if (10 <= length)

對大多數程式設計師而言第1種比較好讀,那這兩段程式碼?

while (bytes_received < bytes_expected)

while (bytes_expected > bytes_received)

同樣的,第1個比較好讀。

左側 右側
代表「比較對象」的表示式,數值較有變化 代表「比較基準」的表示式,數值大多是固定的常數
bytes_received 是個比較對象,會隨著迴圈逐行逐漸增加;bytes_expected 則是數值較「穩定」得比較基準。

if/else 區塊順序

大多數程式設計師對區塊順序不會多做考慮,但有些條件有助於決定區塊順序:

  • 先處理肯定條件而非否定條件,例如:用if(debug)而(!debug)。
  • 先處理簡單的情況,比較能在畫面中同時呈獻 if 與 else 區塊,在閱讀上很有幫助。
  • 先處理比較有趣或明顯情況。

Reference

  • <<易讀程式之美學-提升程式碼可讀性的簡單法則 >>(The Art of Readable Code)

上一篇
讓註解精確與簡潔
下一篇
提供控制流程可讀性--2
系列文
易讀程式之美學30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言