偷代碼

來源: aqee  發布時間: 2010-11-10 20:54  閱讀: 1546 次  推薦: 0   原文鏈接   [收藏]  

  學東西容易。化為己有難。

  我發現自己在最近的幾個項目中偷竊了其它項目的思想。當然,并不是真正的“偷”,而是瀏覽和學習你欣賞的項目和開發者,從中竊取思想。諸如設計模式,重構方法等。Chris是如何處理hub里的命令行參數的?shell腳本和rvm上的Ruby是如何進行韋恩轉化的?
  當你遇到問題,有點難度、需要你動一下腦子時,你要問“嗨,我怎么實現這個呢?”,這是個不錯的問題入手點。

  一旦你遇到這種問題,當然,你可以在Google上搜索出一篇文章,找到方案。但如果你從別人哪里“偷”來,你會收獲兩點:

  1. 你的理解和那個特別的項目之間建立了思想上的連接。
  2. 你“擁有”了那個思想。

  “擁有”你偷來的東西是一種潛移默化的過程,但你可以想象出:你花大量的時間去理解這些思想,你把它應用到解決自己的問題里。這種思想上的過程是很有滿足感的。突然靈光一閃,你開始明白為什么作者要重構這個方法,為什么他們需要一個輔助類了。

  不要誤解;能夠自己創造東西當然是最好。這是學習知識達到了另外一種完全不同的級別,大多數情況下都需要我們這樣。但有時,從他人哪里學習優秀的經驗是一種最快的啟蒙方式——不是為了要解決你手頭上的問題,而是要本質上理解其中的精髓。

  觀察別人是如何解決你的問題的,要自己能夠理解其中體現的思想,按照自己的觀點重新塑造它,讓這思想成為“你的”思想,你把它裝在自己的腦袋里,以備下一個項目中使用。這也就是“學習”這個詞的另一種說法,但就在我想到這種想象的、異樣的說法時——哦,這正是幾個月前在另外一個項目中從Homebrew哪里偷到的繼承策略嗎 ——我接受知識的能力提高了。

  一旦你對知識的吸收消化達到了這種水平,那這些外來的思想就成為了你腦海里捻之即來的自有思想了。

  [英文出處]:Steal the Code

0
0
 
標簽:程序員
 
 

文章列表

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()