2012年11月9日 星期五

善用布林 - 增加 易讀 & 易維護 & 易傳承 系列 第二彈

這個是個討論增加 易讀 & 易維護 & 易傳承 並且絕對會犧牲一些效能的系列

布林 true false 程式設計師一定不陌生

但是其實它的用途不僅僅用於表示一個屬性的真假

既然寫在這個系列,顯而易見來看看怎麼用它來增可讀可維護性



首先來看看這個if

假設一個流程有5個步驟且順序固定,但是分別在 1 3 5 需要判斷 CheckBox 勾選狀態做分歧

這樣寫有錯嗎?當然沒錯,但是顯然不好

因為同樣的結果卻進行了三次的判斷

嫻熟的 PG 都知道當一個方法返回的結果會在複數地方使用到,可以用一個變數接起來,之後只要直接使用變數,不必每次呼叫方法以提升效能

if 其實可以當作成一個特殊的方法, () 內接的參數是布林值

雖然我們是丟一組值跟運算子的組合進去,但是程式語言很聰明的有辦法把塞進去條件轉換成布林值

所以同理任何 if 判斷出的結果,都可以用布林型別的變數接住,之後不必再進行判斷

雖然看起來還是用了3個 if ,但是實際上只進行了一次的運算,後面都直接取得布林值沒有進行運算



再來還是看看if

這個情況其實不少見,在判斷某某值之前必須先判斷是不是 null

條件少的時候還 OK ,但是有時候必須判斷多個值...這時候如果又沒折行排版的話,就會看到比萬里長城還長的一條if

試試這個

沒有留言:

張貼留言