程序猿提升自己水平的方法


一個秘方是“寫博客”,注意這里不是“看博客”,也不是“轉載博客”而是“親自寫博客”。哪樣東西你覺得你比較懂了,那么你就寫成博客。當你真正去寫的時候,你會發現,其實還有很多不懂或者不清楚的地方,這樣就會促使你又去學習研究;當你的博客發表后,其他人除了能夠從你的博客中學到東西外,也能夠幫你發現一些問題或者錯誤,這樣你就更進一步的掌握了;

另外一個秘方就是“鏈式學習”。形象點說,就是你抓住了一個鏈條的一個鏈,然后慢慢慢慢把所有的鏈都拉出來。舉一個很簡單的例子:socket sever編程。很多人在編程的時候,都是去搜索引擎搜索一下“socket server樣例”,然后對照樣例很快就寫完功能了。然后呢。。。。。。很多人沒有然后了,完成任務就不管了。其實這樣做就錯過了一次提升自己的好機會。

“鏈式學習”則不一樣,它是這樣做的:我通過搜索引擎搜索到樣例完成工作后,我會問自己很多問題:樣例中的api每個參數都是什么含義,有哪些注意事項,還有其它API么?為了解決這些問題,我就可能去找本書看,某個編程語言的socket編程;看完以后我知道socket編程的全貌和一些注意事項,而這些是通過搜索引擎搜索的樣例中沒有的;知道socket編程的全貌后,我又會問自己:操作系統是怎么做的呢? 那我又會去看《UNIX網絡編程》,看完后我就對操作系統層面的又掌握更多了;看完《UNIX網絡編程》后,我又知道socket是和tcp/ip相關的,那我又會去看《TCP/IP協議詳解》。。。。。。

這樣去做就是一條學習鏈: socket server編程 -> socket 編程 -> UNIX網絡編程 -> TCP/IP協議,后面還可以繼續不斷拓展下去。如此不斷的拓展和深入,一個很小的契機就能初始你學到很多東西,而這些東西在以后的工作中某些時刻就派上用場了。

我之前在華為是在Windosw平台上用MFC開發,后來到了UC轉為Linux平台開發,用這種方法,大約用了2年就熟練掌握了Linux平台相關的開發技術,包括Linux、MySQL、C++、Java、PHP等

第三個秘方就是“閉環學習”。“鏈式學習”適合於一組相關聯的知識或者技能的學習,而“閉環學習”更適合業務、相互配合的知識和技能的學習。由於軟件開發是需要多個團隊分工合作的,所以絕大部分人都只負責整個系統或者全流程中的一環,這樣導致很多人以為只需要將自己負責部分精通就可以了。其實這樣不利於個人的發展,一個原因是自己負責的一般都比較窄,可學習和提升的空間可能不多,另外一個原因是很難設計整體上優秀的方案。

而“閉環學習”則不一樣,它是這樣做的:了解整個功能或者業務的全流程實現,涉及了哪些模塊和系統,每個模塊和系統主要負責什么功能,涉及到什么技術,性能怎樣,有什么注意點。舉一個我做個的HTTP的業務樣例:從用戶點擊一個url開始,經過了 瀏覽器 -> 網絡 -> CDN -> Nginx -> PHP -> MySQL -> PHP -> Nginx -> 網絡 -> 瀏覽器,最后呈現在用戶面前。我開發的時候只是用PHP開發,但並不只局限於PHP本身,閉環學習就要求全流程中的每個環節都要去了解和熟悉,這樣你就可以學到了“瀏覽器、Nginx、CDN、MySQL”等很多知識。

有的朋友可能會問:這樣做有什么用呢?其實用處非常大,一個是當出現問題的時候,有了閉環學習掌握的知識和技能,你就知道哪些地方可能有問題,應該如何處理;另外一個用處是,當你考慮設計方案的時候,就不局限於PHP本身了,也許某個功能Nginx或者CDN或者前端能做的更好,用PHP實現反而很蹩腳。

 

看書不實踐,基本忘光光。 編程最重要的就是在實踐中感悟。 視頻學習效率高,但是還是不如實踐。 看博客相當於閱讀,主動的閱讀,效果比被動的聽或者走馬觀花的讀強。 工作實踐最鍛煉人,因為需求最接地氣,但是沒有機會充電,知識都零零散散。這就離不開系統的學習了。 而源代碼學習,就是一用實踐,寫博客總結,又是一種實踐。還便於以后查詢。 源代碼實踐學習法,很適合學計算機。 視頻實踐學習法,比光看視頻強。光看視頻比光讀書強。讀書又比稀里糊塗聽課強。 聽課記筆記,效果大於只聽不記。 帶着問題聽課,帶着問題學習,效果不錯。既實踐又主動實踐。把書上的模糊的理論實踐化了。 讀書實踐學習法,效果也不錯。 一起的一切都基於主動,主動,實踐,再實踐! 選擇一種,幾種適合自己的學習方法!在工作和生活中前進!!!

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM