這個是個討論增加 易讀 & 易維護 & 易傳承 並且絕對會犧牲一些效能的系列
通常一組功能按鈕由於常常在各處使用,為了避免重複程式碼,不管是做成使用者控制項還是利用樣板來使按鈕組唯一都是常見的做法
但是共用謂之必須判斷所有的情況,因為實際上有很多因素左右這些按鈕的行為
像是新增頁不該出現[查看],查看頁不該出現[儲存]等等的顯而易見的邏輯互斥
為了在各種情況下判斷按鈕的顯示,不知不覺就寫了這串CODE
如果各位看官覺得這串東西,很簡單明瞭,對應十分分明的話,恭喜您絕對是擁有血輪眼
到底要怎樣才能既明瞭又能避免多次的宣告Visible呢?
早在標題就說破謎底了,就是使用陣列
陣列不但可以整齊的整理這組按鈕之外
更重要的是它可以foreach
嫻熟的PG都知道不管怎樣重複類似相近的鬼東西,想辦法用迴圈,就對了
這裡使用了一組Button[] 跟 各種情況顯示與否的 bool[]
最後不論過程如何 只需要 for迴圈 媒合 Button[] 跟 bool[] 即可
雖然我不知道這樣是否有比較乾淨明瞭,至少我是信了。
雖然這邊刻意對齊排版讓邏輯變得視覺化,但是實際上保持一致的寫作風格就好了
以上。
沒有留言:
張貼留言