這個是個討論增加 易讀 & 易維護 & 易傳承 並且絕對會犧牲一些效能的系列
布林 true false 程式設計師一定不陌生
但是其實它的用途不僅僅用於表示一個屬性的真假
既然寫在這個系列,顯而易見來看看怎麼用它來增可讀可維護性
首先來看看這個if
假設一個流程有5個步驟且順序固定,但是分別在 1 3 5 需要判斷 CheckBox 勾選狀態做分歧
這樣寫有錯嗎?當然沒錯,但是顯然不好
因為同樣的結果卻進行了三次的判斷
嫻熟的 PG 都知道當一個方法返回的結果會在複數地方使用到,可以用一個變數接起來,之後只要直接使用變數,不必每次呼叫方法以提升效能
if 其實可以當作成一個特殊的方法, () 內接的參數是布林值
雖然我們是丟一組值跟運算子的組合進去,但是程式語言很聰明的有辦法把塞進去條件轉換成布林值
所以同理任何 if 判斷出的結果,都可以用布林型別的變數接住,之後不必再進行判斷
雖然看起來還是用了3個 if ,但是實際上只進行了一次的運算,後面都直接取得布林值沒有進行運算
再來還是看看if
這個情況其實不少見,在判斷某某值之前必須先判斷是不是 null
條件少的時候還 OK ,但是有時候必須判斷多個值...這時候如果又沒折行排版的話,就會看到比萬里長城還長的一條if
試試這個
沒有留言:
張貼留言