這篇文章,是從我的《高效
1. 要看書。
在成千上萬的
2. 讀代碼。
這也是我很喜歡的一種方式。如果我并沒有幾年的專業編程
讀別人的代碼可以為你提供更多不同的工作思路,這比你完全憑自己思考得到的工作方式要多。
3. 寫代碼。
謹記,要寫大量的代碼。從根本上來講,最好的
最重要的是,要寫一個你自己的程序,不管它是一個簡單的游戲,或者是一個參與開源項目的程序,還是一個公為你自己使用的簡單插件。用不同的方式來寫程序,盡量嘗試使用新的技術,新的技巧,新的設計方式。一定要讓現在的項目比以往的項目更好。想要成一個優秀的開發者,這一點是核心。
4. 與其他開發者交流。
像 Apple,微軟,Google 等大公司一樣的新聞描述的一樣,(與其他開發者交流)可以讓你解決一些復雜的問題。雖然這并不能讓你感覺到自己已經成一個團隊或是社區的成員,但是這種方法可以讓你接觸到更多不同的想法。
不同類型的項目要求不同的設計方法,代碼技術,開發流程和設計思想。如果你工作在一個小團隊里,你不必與太多的人接觸,只要在用戶群會議中找到一些人(來討論)即可。如果這樣還不行的話,參與到在線論壇中與其他人討論(這時你需要更努力地尋找高質量的討論內容)。
6. 教會別人。
相對于僅僅讀代碼之類的工作,教其他人學習可以讓你更深入地學習某個技術,這種方法有著非凡的效果。教會別人某個技術,同樣也會讓你更專注于這種技術,并且可以比別人更深層次地理解它。同樣你也會面對一些問題。
“如果你不能向一個六歲的兒童解析清楚一個概念,那么其實是你并沒有完全理解它。”Albert Einstein說。
教學場景可以是無窮無盡的:與工作搭檔一對一交流,休息碰面,非正式周會,學習茶會,教室,討論發表會,等等。每周在相同理念開發者之間舉辦一次30分鐘的非正式會議怎么樣?每周,讓幾個人來就他們想要更深入了解話題,向大家傳授這些技術知識,并且展開討論。如果你知道你將要向團隊成員們傳授正學學習的知識,你是不是更想要了解這項技術的每個細節呢?
6. 收聽網絡電臺。
如果你有空閑的時間,可以訂閱網絡電臺節目。我現在最喜歡的編程節目就是 .Net Rocks。這個節目還會做一些視頻節目,叫做 dnrTV 。這樣會讓你即時捕捉到最新最好的技術。一個人是不能學習到所有知識的,而網絡電臺剛是一個學習了解廣泛知識的途徑。
7. 閱讀博客。
博客遠遠比閱讀者要多,但是其中有一些卻是極其優秀的。我這里不并不是要推薦博客,因為網絡上已經有了足夠多的博客。這是與真正在開發你所喜歡和使用的軟件的開者聯系的好方法。
8. 學習新的語言。
即使你已經在 C(++,#) / JAVA 等語言上有很好的造詣,仍然有很多其他可以解決問題的編程語言。學習新的語言,是對你已有思維方式的挑戰。這不僅僅是另一種語言,更是對思維的重新架構。的確,所有的語言最后都會被編譯成匯編程序,但是這并不意味著
9. 學習不正確的方式。
除了要學習應該怎么做,還要學習不應該怎么做。經常閱讀 Dailywtf.com ,學習你并不知道的經驗與教訓。學習適當的面向對象設計方式,代碼寫作方式,和必須要寫的代碼等,是很好的方式,但是如果不細心的話也容易養成不良習慣。學習認識不正確的思路是負責項目開發至關重要的一環。
維基百科對很多覺的不正確方式有十分透徹的分類。
10. 要謙虛。
學習,意味著:
1、用更好的知識代替不完美的知識;
2、增長你所不知道的知識;
只有承認自己有所不足,才能有學習的動力。歸根到底,就是謙虛,不對嗎?如果你開始認為你已經掌握了所有需要的知識,那么你就危險了。真正的學習是如饑似渴地追逐知識并使其內在化,這需要很大的努力。我們都知道這一點,但是要必須時常不斷地提醒自己。
來自:http://news.csdn.net/n/20080408/115015.html
文章來源:http://m.tkk7.com/kissjava/archive/2008/04/14/192763.html