關于技術學習的一點感想
最近這一年來由于公司的原因,連續不斷的在不同的項目(技術)之間切換,當然這里說的不是編程語言,而是語言之外的東西;比如,之前寫WINDOWS UI程序,然后需要寫WINDOWS網絡程序;或者之前是從事視頻編解碼器的工作,然后參加P2P項目的開發,考慮網絡路由算法等。由于有了一些年的開發經驗,一般項目即使在剛開始接觸的時候也還是可以理解,也不覺得有太多復雜的東西,但隨著接觸的深入,其實不是這么回事,除了知識不說,經驗就是需要靠多實踐和時間換來的。
軟件開發需要至少涉及到兩大部分知識:
首先是軟件開發本身的技術,包括編程語言,數據庫,網絡,操作系統,以及各種API或第三方庫,當然還有其他一些幫助開發的框架和工具,這些東西沒有接觸過還是需要一定的時間去了解。另一大部分是關于軟件開發所涉及的領域知識;例如:如果你從事視頻編解碼器的編寫,那么領域知識就是視頻編解碼器的工作原理,如果你參見P2P項目,那么P2P網絡的算法就是領域知識;如果為企業客戶做MIS,那么他們的流程就是領域知識。領域知識肯定需要學習,因為你不會都接觸過。
因此下面這是我的一些總結:
1.一個月內能了解概念,可以工作,不會拖團隊的后腿。
2.3-6各月內才能談得上真正的理解。沒有這么長時間的深入思考,對其理解也是非常膚淺的,即使你說你已經很了解了。
3.最好是自己能實現一些東西,并投入運行后觀察問題,才能得出自己的見解,并才會可能成為專家。
這里可以說說經驗是什么了。按照我的理解,經驗就是將一些知識應用到實際中的一些遭遇。知識偏重理論,應用起來才能成為產品;經驗來自我們一行行代碼的編寫,一段段程序的調試;當然還有很多BUG的修改和系統CRASH。
因此看來不要在一開始太驕傲自己了解多少,也應該要尊重有實際經驗的人;正如有人說:了解越多才知道自己知道的越少。
posted on 2011-07-05 09:53 笨笨 閱讀(2298) 評論(1) 編輯 收藏 引用 所屬分類: 感想