西方國家的一句諺語,不要重復(fù)發(fā)明輪子,
Don’t Reinvent the Wheel.
我想IT從業(yè)人員沒有不知道其中的含義的,其基本的意思是說,企業(yè)中的任何一項工作都有人做過,我們需要的就是找到做這項工作的人。在IT業(yè)引申起來,就有了不同的理解,有人說某項技術(shù)別人已經(jīng)做過,我們需要用的時候,直接拿過來用,不要重新制造。有人說西方人自己不就在發(fā)明一個又一個輪子嗎,比如有了struts,還要搞webwork、tapestry等,有了hibernate,還要搞ibatis、jdo等。對此,我的看法是,我們不重復(fù)發(fā)明輪子,但我們必須深入研究其輪子的制造原理,如果我們能制造更先進的輪子,那有必要發(fā)明這個輪子。所以,當我們在使用別人的輪子時,如struts、spring、hibernate,我們要深入了解其輪子的制造原理,我們也可以制造一些類似web框架的小玩具,但不是先進的輪子,那就僅限自己學(xué)習(xí)之用了,沒必要去推廣。
?? ? 還有一種重復(fù)發(fā)明輪子的情況值得重視,那就是在我們的工作學(xué)習(xí)中,經(jīng)常會碰到一些新的輪子,那我們當然是要深入了解了,有些人就從最基本的入門開始,自己翻譯官方文檔或查看源碼,花了很長的時間和很多的精力,最后終于說,我已經(jīng)深入了解這個輪子了,哈哈。導(dǎo)致的結(jié)果就是,我們搜索或看blog時,就有很多這種文章,如***入門(原創(chuàng)),***參考(原創(chuàng))。這種情況我深有體會,最近我花了很多時間和精力去研究代碼靜態(tài)分析工具的使用,可無意中發(fā)現(xiàn)了在developerworks上已經(jīng)有了這方面詳細的介紹和分析,比我整理的還好,那個心情,郁悶呀,白花花的時間和精力就這么白費了。如果之前我先搜索這方面的資料,也許我可以只花很少的時間就可以上手,剩下的時間進行更深入的研究了。
???? 人的時間和精力是有限的,就算不同的人天賦不一樣,那我們也應(yīng)該把有限的時間和精力花在刀刃上。所以,當網(wǎng)上有了很好的資料借鑒時,我們可以更快速的上手,可以把經(jīng)驗和心得記錄下來,而不是閉門造車的,艱難的翻譯官方文檔,節(jié)省下來的精力可以進行更深入的研究。希望有一天,blogjava上不是充斥著***入門,***教程之類的文章,而更多的是不僅是原創(chuàng),更重要的是沒有重復(fù)的,如***經(jīng)驗總結(jié),***感受感想的文章。不是說我們浮躁的不去翻譯官方文檔,做什么事情都先要去搜索,而是我們應(yīng)該像牛頓一樣,踩在前人的肩膀上,才可以看的更高,更遠。