自學是個好主意。我非常贊成終生學習,你應該這樣做。但是,在軟體開發領域,有如此多的新技術,有如此多要學習的東西,我們在學習中會感覺被完全壓垮了。
你感覺你一直在扮演追趕的角色,但是一直都趕不上。就像是跑步機一直比你能跑的最快速度還要快幾步,你一直受挫,還有在最後關頭掉隊的危險。
問題就是嘗試學太多導致的。有100種不同的技術,這些都是你必須或想要在工作中應用的。你感覺為了能夠勝任,為了做到最好,你需要學習和精通所有的這些技術。然而問題是,你感覺你其實乙個都不精通。
但是,這樣是真的有效,還是讓你承受了太大的壓力?
你能記得你讀的一半內容嗎?
你會真的用到它嗎,或者你為未來的某天準備——我可能會需要這個桶?
我的觀點並非是你們不應該學習,只是可能你承受了太大壓力想要學太多東西。
我這樣說是因為我也曾經是這樣。我這樣做過,我知道這是什麼感覺。
我也知道這樣用強行的步驟學習不是很有效。我不能記起大部分我讀過的技術書,並且在工作中很少或者沒有應用過。
我知道我學習的技術最好是能在實踐中應用。事實上,我的一些最有用,並且保留下來的學習成果,是因為學習我當時做的事情,但是我處理乙個問題,無法解決,因而我必須尋找乙個答案。
看起來可能會很奇怪 ,像我這樣合理分配軟體開發學習資料的人會告訴你,不要去學習太多東西。
可能更合理的情況是我跟你鼓勵要吸收所有你能接受的資訊。你應當在你吃飯,睡覺的時候連續不斷的看我的課程資料,並且將其應用於工作。
但事實是,我不認為這是最有效的學習方式。我不認為你不停地看我的課程就能學到很多東西。
我覺得改進技能的最好方法就是學習,你需要做的就是在你正需要這些知識的時候學習,所謂的及時的學習。
這不意味著在了解一門技術前就開始相關的工作。如果你對要使用的技術一無所知,你會在開始階段就浪費大量時間。但是,我發現只要先做了一下的三件事,你就能夠開始使用這門技術開始工作了。
如何起步
用這門技術能做什麼
在你90%的時間裡都會用到的東西
通常,學一門新技術最難的地方是學習它能實現什麼。
我發現,越快在實際中應用一項技術並且解決實際的問題,越能夠有提高。只要你做到了以上我提到的三點,能讓你的時間更好的花在用技術解決工作中的問題而不是僅僅學習技術本身。
你可能會迫使自己在用一門技術前就精通它,但你必須學會忍受催促。你必須在犯錯和遇到阻礙的時候學習。真正的學習是發生在你需要它的時候,而不是在之前就獲得它。
如果你知道了通過一門技術能做什麼,並且還了解了足夠的基礎,那麼在遇到實際中更多問題時,也完全沒有問題。及時的學習在長遠來看是更加有效的,並且能夠讓你不用花費大量時間去處理你消化不了的資訊。
即使你有足夠的時間學習,即使你使用及時的學習,你仍然只會學到軟體開發領域的一點點。新技術每天都在出現,現有的技術也在不斷發展。
意識到你不可能把所有的東西都學會是很重要的。你不可能全部學會,而你知道的可能只是現有技術的一小部分。
這是我談到專門鑽研某一方面的原因之一。你最好能選一門技術,並且深入鑽研它而不是所有的技術都想要精通。
這不意味著你不應該在不同的方向上擴充套件你的技術;你當然應該嘗試不同的東西。不要覺得你能在好幾個領域內都能夠精通。試著讓你的學習集中與兩個主要的方面:
乙個你要精通的特長
在軟體開發領域裡通用的技術(《**大全》)
不要去讓自己的精力太分散。在你需要的時候根據自己的能力進行學習。如果你基礎很好,依靠時間和經驗,你能學會任何你需要用到的技術。
有時候,一些超級程式設計師看起來什麼都知道,並且什麼都能做,但這只是幻覺。這些超級程式設計師通常是在一兩個領域內非常精通,並且了解大量在很多領域裡通用的知識。
別因為要學的太多反而壓垮自己
別因為要學的太多反而壓垮自己 摘要 自學是個好主意。我非常贊成終生學習,你應該這樣做。但是,在軟體開發領域,有如此多的新技術,有如此多要學習的東西,我們在學習中會感覺被完全壓垮了。你感覺你一直在扮演追趕的角色,但是一直都趕不上。就像是跑 自學是個好主意。我非常贊成終生學習,你應該這樣做。但是,在軟體...
別學MFC了,要學就學這些
遙想多年以前,這本書也是我的入門書籍之一,有了電腦後,裝了開發環境嘗試編譯書中的例子,從此開始了 mfc 的入坑之路。時至今日,在工作中還在用,或許未來的一段時間裡還要繼續使用。雖然我還在使用,但是對於之前沒接觸過 mfc 打算學習的人來說,建議還是不要學了。不過在今天這個時代,打算學習的人想來不會...
要學的東西太多,應該如何把握學習節奏
今天有同學在學院群裡問了類似這樣的問題 要學的東西太多了,這兩天學這個,過兩天又學其他的,感覺時間好緊,這該怎麼辦?那麼如何取捨呢?我這裡有一些不成熟的建議。盡量學習變化比較少的東西 很多年前有個室友讓我去學vim,他說vim的基本操作從誕生到現在都基本沒有變化過。後來我聽從了他的建議,果然一次學習...