low level programmer

Main | Next day (Jul 4, 2009) »
星期五 七月 03, 2009

簡單, 複雜與靈活設計的記分

程式設計中, 簡單才是王道. 可是如果都只求 work 的簡單也不太好.
今天心血來潮, 突然覺得這好像可以自己評分.

整個過程目的就是要計算積分後取絕對值, 分數愈低表示設計愈恰當.
"簡單"積分是1
"複雜"積分是10
"靈活"積分是-10

所以一個個的小程式區塊設計就可以評分:
如果你有一個簡單, 沒有靈活, 那你的程式是 Math.abs( 1 + 0*10 + 0*-10 ) = 1 分
如果有一個簡單, 但是有一個靈活, 那就是 Math.abs( 1 + 0*10 + 1*-10 ) = 9 分
如果有一個簡單, 而且還有一個複雜, 但是都沒有靈活, 那就是 Math.abs( 1 + 1*10 + 0*-10 ) = 11 分
當然你也可以把10個簡單換成一個複雜.

如何, 是這樣的感覺嗎?
簡單是最重要的,
可是當簡單變複雜就是一點點重構與一點點設計模式出馬建立一個靈活的時候了.