自學編程需要注意什么?

由于碰到過好幾個讀者給我發(fā)消息或留言問:“要轉(zhuǎn)行做程序員的話,應該如何入門和提高”這樣的問題。之前大多回復的比較簡單,一直在強調(diào)大家要多實踐,但是我忽略了“轉(zhuǎn)行”這樣的前提。由于從小讀書開始就一直對這方面感興趣,而對于大學真正在這方面收獲比較大的感受就是實踐,所以一直在強調(diào)要多動手,然后很多初學者其實開始是非常欠缺動手能力的,現(xiàn)在想想之前的回答還真的沒有多大的可操作性。今天看了stormzhang的這篇文章,我覺得還是非常適合那些想要轉(zhuǎn)行,或者剛剛接觸編程的朋友們參考的,所以在這里推薦給大家。

前幾天在知乎上看到這么一個問題,一位在讀學生,自己非常想自學編程,但是很怕走一些彎路,于是提問「自學編程需要注意什么?」,我看了一圈回答,看起來都不是自學過來的,很多回答抓不到重點。

我的讀者都知道,我是非科班 0 基礎自學過來的,我很清楚一個人自學編程有哪些誤區(qū),有哪些需要注意的地方,以及哪些可以提升效率的地方。所以,我從我的自學經(jīng)歷給一些自學編程的后來者總結(jié)了一些建議,希望給正在自學編程或者打算走這條路的讀者一點幫助。

1. 先培養(yǎng)興趣

其實自學編程不是那么難,只要是理工科生、邏輯思維好點,最好英語也好點,基本都可以學會編程,但是很多人都失敗了,原因就在于很多人還沒入門就放棄了,看著一堆冰冷的英語字母、一些枯燥的書籍,致使很多人嘗試了一段時間直接就放棄了。

所以自學正確的姿勢是一定先要培養(yǎng)下興趣,不要上來就學習編程語言,先搞清楚編程能用來做什么,最好是自己有個小想法,比如自己想做個網(wǎng)站,自己想做個 app,有這樣的想法之后,再去針對性的去學習需要的編程知識,你才會更容易堅持下去。

2. 不要鉆牛角尖

很多新手自學的時候,最開始一定會遇到各種問題,比如學習的時候搞不懂為啥一定要這樣寫,程序運行出來了,怎么這么神奇?它背后是什么樣的原理呢?等等等……很多人都會花很大的時間去試圖全部弄懂,導致花費大量的時間,自己進度同時又很慢,過來人告訴大家,初學者不要過分鉆牛角尖,很多東西,你的 level 沒到那個水平,自然沒法完全弄懂,完全沒關系,等到了后面,有些疑問自然就明白了。

這就好比,你初中的一些數(shù)學、物理題,你花了很長的時間也不一定能明白,但是到了高中之后,你會恍然大悟,原來這個原理是這個意思。

所以,初學者切忌鉆牛角尖,按部就班的去學習好了,哪怕遇到一些不太明白,不知背后原理的事情,完全沒關系。

3. 結(jié)合視頻

初學者一定要看視頻,而且不能只看視頻,視頻是幫助你理解的,結(jié)合書本、配合視頻一起學習,效果是最好的,一些視頻講解的比較淺顯,不夠系統(tǒng),但是只看書的話,很多人容易看到后面就看不懂了,所以,我自認為視頻 + 書籍是初學的最好方式,等到后期,有能力了,看書、看視頻、看博客就隨你了。

現(xiàn)在有很多在線視頻網(wǎng)站和公眾號視頻都很不錯的,推薦下:

「慕課網(wǎng)」和「Udacity」,免費的話上慕課網(wǎng)就夠了,如果想自學能力較差,那么可以考慮在 Udacity 買套付費課程。公眾號的話是【八戒程序猿】

當然,如果付費課程都沒能激起你的學習興趣,但你又想走編程這條路,那么可以考慮去報個培訓班,但是我不是特別建議,互聯(lián)網(wǎng)時代,在線教育足以讓每個人接觸學習我們感興趣的行業(yè),付費課程 + 輔助指導 + 自學,我覺得適合大部分人了。

4. 多敲代碼

編程是一個極度重視實踐的行業(yè),也許書上的代碼你看得懂,但是你自己親自敲下來一定會遇到各種問題,所以,初學者在學習的過程中,一定要親自實踐,哪怕你對著書上的代碼一行一行的敲下來,也比你單純的看有效果的多。

所以,敲代碼一定是伴隨著整個學習周期的,從最初的學習,到后面入門,再到之后你的提升,都離不開它,還是那句話,也許在學習的過程中你會遇到一些難題,會遇到暫時不了解的代碼,沒關系,就悶頭敲下去,只要你能堅持下去,一些問題在后面都會自然的有答案的。

5. 堅持下去

編程這事其實真的沒那么難,只不過編程在一開始不會有那么大的反饋,不像你學唱歌,花幾天,就可以唱一首歌了,不像你學語文,花個一周,就會說「之乎者也」了,編程是你可能你花幾個月的時間,你甚至都覺得自己啥都不會,所以很多人在一開始就放棄了。那么自學編程成功的無一例外都是堅持下來了,你得做好少則三個月,多則半年的時間一直持續(xù)學習,并且這么長時間可能感受不到任何進步的狀態(tài),但是,一旦你堅持下來了,當然,不只是單純的熬過這個時間,你得堅持每天都要學習,等渡過這個初期階段,你會很有感覺,后面的路雖說也不好走,但起碼你沒那么迷茫了,你知道該怎么學習了,你會很容易找到方向了。

相比其他行業(yè)來說,編程入門難,做到精更難。但是對于絕大部分自學編程人來說,你該優(yōu)先考慮入門,爭取堅持下去,用三個月到半年的時間,讓自己渡過這個艱難的入門期。

6. 折騰個作品出來

很多人通過視頻 + 書籍的方式堅持一段時間,掌握了點編程基礎,覺得自己學的還可以了,這個時候你該考慮折騰個作品出來,這是檢驗你學的理論知識的過程,這個作品可以很簡單,可以是一個簡單的博客網(wǎng)站,也可以是做一個小的資訊 App,還可以是一個小的爬蟲等,甚至 GitHub 有很多開源的項目,你去仿寫都沒問題,但是重要的一定要自己親自去做,而不是對著 copy,相信我,無論你的理論知識掌握的多么扎實,在這個過程你都會遇到各種問題,哪怕之前你覺得很簡單的東西,但是動起手來可就沒那么容易了。

當你花費了很大的功夫,親自把作品折騰出來了,你會有非常大的滿足感與進步感,你的能力有了一個提升,而且這也算是你的項目經(jīng)驗了,有一個完整作品,其實才算具備找工作的基本能力了,這時候可以試著找一份初級的開發(fā)崗位,一旦找到工作,你的自學之路,基本算是成了,后面的路,雖然也不容易,但是你算是熬到了。

最后,再給自學的人建議一點,要善于使用搜索引擎,你遇到的那點小問題,已經(jīng)有無數(shù)前輩早都遇到,并且已經(jīng)分享在互聯(lián)網(wǎng)上了,前人的經(jīng)驗是你的寶貴學習資源,也許你一開始使用的是百度,但是,建議你試著使用 Google,當你學會使用 Google 的時候,你會接觸另一個世界。

總之,我是過來人,我非常清楚自學編程這條路有多么不易,尤其對于一些非科班的同學。

你要耐得住寂寞,你要比別人更努力,你要找到適合自己的編程方向,再到找到一份工作,這過程的艱辛只有過來人才能體會。但是過來人的經(jīng)驗告訴你們,我自學編程成功幾乎改變了我的人生軌跡,而且我從未后悔過。

真心希望每個自學編程的人都可以找到自己的方向與定位,祝早日找到工作。

八戒推薦

java干貨視頻【免費分享】

JavaWeb學習路線+視頻

Sketch3自學視頻教程(全套中文教程?UI設計利器)

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容