iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 3
0
自我挑戰組

那些敏捷開發裡的小事系列 第 3

Day 3 你是專業的軟體開發人員嗎?

  • 分享至 

  • twitterImage
  •  

你是專業的軟體開發人員嗎?

Imgur

身為敏捷開發的愛好者,你一定聽過 Clean Code (無暇的程式碼) ,裡面教你好的程式碼應該怎麼寫,應該注意什麼,但它太技術面了我們在這先不提。它還有一個番外篇叫 Clean Coder,裡面就提到了何謂專業的軟體開發人員。

不要破壞原本的功能

不管你加了什麼功能最重要的是原本的功能不能壞。你一定常常聽到,當有新的版本上線後,就會有人抱怨原本的功能怎麼怪怪的,這就是原本的功能被破壞了。就像有句廣告台詞所說的先研究不傷身體,再講求效果,先把原本的功能確保好,再加上新功能吧。

每年都會有所謂的你最信任的專業人士或職業的調查,醫生一定都會名列前茅,可以說是最被信賴的專業人士,我們來想想如果醫生原本要幫你割盲腸,結果手術結束後你的腳不能動了,你作何感想?

你一定覺得專業的醫生不會這樣。所以如果我們破壞了原本的功能,那就是我們不專業的表現。

專業的開發人員不應該留下Bug

開發的軟體有 Bug 就會損壞軟體的功能,因此專業的開發人員不應該留下Bug。你可能會說,這不太可能阿,系統那麼複雜,怎麼可能沒有 Bug。

你說的沒有錯,軟體開發出來的系統隨著時間的演進越來越複雜,很難沒有 Bug。所以人體太複雜了不可能完全理解,但醫生扔然誓言不傷害病人。如果醫生都不能拿人體複雜來推託,那我們又怎能拿系統複雜來為 Bug 開脫呢?

要對自己的不完美負責

這就是無暇的程式碼的意思嗎?完全沒有Bug?

當然不是,這裡不是說要追求完美,而是要對自己的不完美負責,程式難免會有 Bug但不代表我們不需要對它負責,所謂的專業人士就是能對自己所犯的錯負責的人,那怕那些錯誤實際上是在所難免的。

所以專業人士要練習的第一件事情就是道歉,但這還不夠,你還必需學習不犯同樣的錯誤。經驗多了以後你的失誤率應該要快速遞減,趨近於零,當然失誤率永遠不可能為零,但你有責任讓他趨近於零。

在你手上死了多少人,你就要成長多少

最後我們來看看醫龍裡怎麼描述這件事情的

他們手裡死去的病人越多技術就會越進步,在你手上死了多少人你就要成長多少。

Imgur


上一篇
Day 2 計程車司機的專業
下一篇
Day 4 找到軟體缺陷是品質保證人員的責任嗎?
系列文
那些敏捷開發裡的小事30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言