作者 : Fred Wang
根據軟體工程大師Edward Yourdon "Techniques of Program Structure and Design"發表的統計數字
以一個相同的軟體系統開發過程, 最佳與最差的比較
1. 偵錯所花的時數(hours) : 最差 170, 最佳 6, 比例: 28:1
2. 程式設計所花的時數(hours) : 最差 111, 最佳 7, 比例: 16:1
3. 開發的程式行數(不含註解) : 最差 6137, 最佳 1060, 比例: 6:1
4. 程式的執行時間(sec) : 最差 8.0, 最佳 0.6, 比例: 13:1
由上面數字可知, 好手/熟手與生手的差異, 生產力可以相差超過十倍
如何提升自己程式設計的能力, 包含技巧與生產力, 是每個軟體開發人員很重要的一件事
同上面做的事情是一樣的, 最好的程式設計比最差的程式設計師
. 開發時間為十六分之一
. 程式行數為六分之一
. 偵錯時間為二十八分之一
. 程式執行效率為13倍
想想看省下的時間可以做多少事情, 而往往好手會接的工作更多, 因此產出更不只十六倍
另外,
藝術家可以創造出令人驚歎的作品, 但是建築師才能設計出可以住人的高樓大廈
因此, 會寫漂亮程式的, 不見得能設計出可用的系統
懂得技術的人, 不見得能有好得解決方案(solution)
或許與您的經驗不同, 我過去工作過的幾個地方, 看過一些程式設計好手, 都是內斂含蓄, 不共識過的人, 是無法知道他的功力
見過許多軟體技術的消長, 因此能體會在軟體界沒有最佳的技術, 只有最合適的技術
能謙卑的面對自己的不足, 才能有所成長, 這是我的的體會
沒有留言:
張貼留言
歡迎提供意見, 謝謝 (註 : 留言經過版主審核通過才會發布)