前言:程序員們辛苦地學習,有的沒有好的效果,有的過程充滿痛苦,有的更是不知道我學它的目的是什麼。程序員
國內的教育體制,培養了這樣一批人:面試
他們努力、奮進,熱愛技術,願意投身軟件行業,願意寫出高質量的代碼,他們對業界的東西很感興趣,他們願意學習紮實的基礎知識,他們渴求火熱的新技術……編程
幾年之後,他們擁有普遍的視野,閱歷寬闊、經驗老到、言辭犀利,對行業動態瞭如指掌,顯然,他們是行業的博學者。網絡
然而……架構
他們卻缺少這樣一種能力——思考。框架
欠缺思考容易致使這樣的現象:學習
不會作設計編碼
遇到了問題,拿見到過的、學到了的熟悉的框架、方案、模式往上套,而不仔細分析其中的利弊,只是儘量地尋找最接近當前問題的解決途徑。spa
不能堅持本身的觀點操作系統
這一點在面試中最容易觀察到。應聘者有剛畢業的學生,也有工做超過10年的有豐富經驗的從業者。
他給出一個粗略的方案之後,在方案沒有細化到必定程度之前,很難給出優劣的評論,可是,若是你輕輕地challenge一下,他就迅速放棄原本的構思,跑到你的思路上來。
例如,SNS系統中,服務端有消息要怎樣通知到客戶端,這樣的一個問題,解決方案有不少種,好比客戶端輪詢、服務端hold住鏈接推送等,各有利弊。應聘者應當有本身的觀點。
不能細化一個問題解決方案
怎樣區分一個空談家和一個實幹家?給他一個具體的問題是最好的辦法。在我剛工做的時候,我曾經很欽佩那些在活動中、討論中高談闊論的人,我以爲他們很能說。
但是後來我逐漸發現,能說的人實在是太多太多了。細化設計、甚至落到編碼,纔是對一個程序員真實的檢驗。
固然,若是你以爲作軟件設計的人能夠不熟悉編碼、架構師能夠不首先是一名高級程序員,那咱們也沒有什麼可談了:)。
若是你會學習,你能夠成長得很快;若是你不會思考,你永遠只能跟在別人後面。
新技術學習的方式呢,我想說這麼幾點:
尋找切入點
最好是要落到動手實踐上去的,可是假若習慣從那些原理介紹的文字入手,何嘗不是一種很差的選擇。
並且,現實狀況會有一些約束,例如在瞭解幾家互聯網公司的雲平臺的時候(Amazon的EC2,M$的Azure等等),除非你是這幾家公司的員工,不然是很難深刻其中的。
尋找本身的興趣點
學習應當是一件有意思的事情,當你的大腦排斥它的時候,我不相信能夠很容易地掌握這門新技術。
若是你找不到興趣點,那麼,不妨回到我前文對於新技術是否值得你學習的觀點上去,既然你沒有什麼興趣,你學它幹嗎?
善於比較
比較是一種很是容易上手的思考方式,和什麼比較?和類似技術比較,和操做系統、網絡這些基礎設施上面的例子比較,最後,和生活中的例子比較。
不斷得到回饋
回饋是什麼?作出一個HelloWorld的例子,就是一個極好的回饋;理解某一項實現原理,聯想到其它相似的實現,產生一種恍然大悟的感受,也是一種回饋。
在學習的過程當中,不斷產生回饋,意味着你不斷地收穫成就感,這是繼續下去的動力之一。
另外若是你想更好的提高你的編程能力,學好C語言C++編程!彎道超車,快人一步!筆者這裏或許能夠幫到你~
歡迎轉行和學習編程的夥伴,利用更多的資料學習成長比本身琢磨更快哦!
免費學習資料: