開發人員最重要的技能

08年初寫的。話說我現在越來越發現,想寫出好的代碼真不是一件看上去那麼簡單的事情,要遠遠比學習某些特定的技術困難得多。

 

2008-01-23 19:37

  閱讀了Martin Fowler最新的一篇blog,頗有感觸。
  <a href="http://martinfowler.com/bliki/PreferDesignSkills.html" target="_blank">http://martinfowler.com/bliki/PreferDesignSkills.html</a>
  
  這篇文章一開始就提到這樣一個場景:假設你在招聘開發人員,現在有兩個候選人都具有幾年的開發經驗,其中一個具有你所欣賞的一些設計技能(broad design skills),比如DRY、合理的使用模式、TDD、清晰易讀的代碼風格等等,卻完全不瞭解你們當前正在使用的特定平臺。而另一個開發人員則非常熟悉你們的平臺——比如說語言、庫、各種工具等等,但他對上面那些設計技能卻一點也不感冒。假定兩個人其它方面是完全等同的,這時候你會選擇哪個呢?
  Martin Fowler直截了當的選擇了具有更廣泛設計技能的那個。因爲一個好的程序員應該能夠相對較快的上手新的平臺,哪怕是在一個平臺上的設計技能可能不是完全適合另一個平臺,而學習基本的設計美學則要困難得多。工作中是需要不停學習的,而就算說學習設計不比學習平臺更困難,那也絕對不會更簡單。對於一個積極的有廣泛設計技能的人來說,一定能夠及時的上手新的平臺;而反過來就不一定了。有的人可以把某個平臺的細節瞭解得很清楚,卻從來寫不出清晰的代碼來。
  Martin Fowler還在這篇文章裏提到了開發人員其它一些重要的技能,比如與客戶溝通的能力、對領域也就是業務的瞭解把握、與他人協作的能力和快速學習的能力等。一個理想的開發團隊裏需要所有的這些技能。有了領域專家和平臺專家,一個具有良好的廣泛設計技能的開發人員能夠很快變得非常有效率起來。

發佈了26 篇原創文章 · 獲贊 0 · 訪問量 5萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章