Design, Implementation, Algorithm
曾經困惑了很久,到底哪一個比較重要,Design? Implementation? Algorithm?
最早時覺得, Implementation是最重要的,因為無論做再多的事,最後就是要把一個東西做出來,否則一切都是空談。程式寫久了發現,如果沒有 Design 的話,就算把東西做出來了,也會有很多的問題在裡面,有可能是現在的問題,也有可能是未來才會遇到的問題,所以漸漸覺得 Design > Implementation。
程式再繼續寫下去,開始覺得自己的程式設計得再好也沒用,如果失去了核心的演算法,就好像失去靈魂的空殼,即使有再美麗的 外表,也只能拿來純欣賞罷了,於是漸漸覺得 Algorithm > Design > Implementation。
當 心中的排名已經成形後,再寫了一陣子程式,漸漸又開始覺得,Design 做得再漂亮,Algorithm 設計得再怎麼嚴謹,論文寫得再怎麼完美,但最後竟然沒有辦法把這個紙上談兵的東西給Coding出來。怎麼回事?Implementation > Algorithm > Design > Implementation > ... ,這似乎成了一個矛盾的結果!
等再過一段時間後,終於得到了最後的答案:這三個的重要程度排名應該是 Algorithm = Design = Implementation,缺一不可。
最早時覺得, Implementation是最重要的,因為無論做再多的事,最後就是要把一個東西做出來,否則一切都是空談。程式寫久了發現,如果沒有 Design 的話,就算把東西做出來了,也會有很多的問題在裡面,有可能是現在的問題,也有可能是未來才會遇到的問題,所以漸漸覺得 Design > Implementation。
程式再繼續寫下去,開始覺得自己的程式設計得再好也沒用,如果失去了核心的演算法,就好像失去靈魂的空殼,即使有再美麗的 外表,也只能拿來純欣賞罷了,於是漸漸覺得 Algorithm > Design > Implementation。
當 心中的排名已經成形後,再寫了一陣子程式,漸漸又開始覺得,Design 做得再漂亮,Algorithm 設計得再怎麼嚴謹,論文寫得再怎麼完美,但最後竟然沒有辦法把這個紙上談兵的東西給Coding出來。怎麼回事?Implementation > Algorithm > Design > Implementation > ... ,這似乎成了一個矛盾的結果!
等再過一段時間後,終於得到了最後的答案:這三個的重要程度排名應該是 Algorithm = Design = Implementation,缺一不可。
留言