自學編程的朋友,我想給你們這 5 個建議
作者:黃小斜
文章來源:微信公眾號【程序員江湖】
閱讀本文大概需要 2.8 分鐘。
很多人都想轉行互聯網,不管是出於興趣、行業前景還是薪資的考慮,想要轉行互聯網的人們必須要面對一個問題,那就是如何自學編程,更確切的說,是如何0基礎學編程。
其實我基本上也是0基礎自學編程的,大學的時候學的電信專業,對於編程語言只懂得一點皮毛,那些內容,相信大部分人看一些網上的教程也可以掌握了。
作為過來人,想給大家一些建議,不管你是學生想要自學,還是跨界轉行,亦或是純粹當做興趣愛好,都可以把我的建議作為參考,不會有壞處。
興趣是最好的老師
這句話大家都聽過,但我覺得,不管是你想從事哪個行業,想要做的比較好,去比較好的公司,至少要有興趣,其他的能力、專業水平暫且不談,如果連興趣都沒有,那麽為什麽要從0開始去做這個行業,去學這樣技術,顯然是非常不理智的行為。
有興趣,才有動力去學習每一樣東西,不管是計算機基礎、編程語言、算法等等,興趣是原動力,沒有了它,你一定堅持不了多久。
可能很多人覺得興趣不一定最重要,可以靠努力、靠堅持、靠意誌力去學習,但是,那樣又有什麽意義呢,你願意這麽不快樂地去學習麽,你的堅持又能持續多久呢。
時間是最好的朋友
學習編程這件事,需要從長計議,怎麽說呢,就是需要花很長時間,絕對不是一蹴而就的,你可以說你花3個月培訓學會了一門語言,以及相關的項目實戰技能。
但是在我看來,這也只是掌握了一項技能而已,學習編程的路還有很長,不管是你自己做項目,還是參加工作,學習編程都是一件需要持續做的事情。
曾經有人提出10000小時理論,就是你在一個領域投入至少1w個小時,就可以成為該領域的專家,學習編程也不例外。
先易後難,不要想一步登天
很多新手都是初生牛犢不怕虎,因為對編程領域不了解,便不假思索地定了一些很高的目標,比如想進大廠,想做有復雜度的項目,想短時間學習一門語言並找到工作。
理想很豐滿,現實很骨感,你可能低估了入行的難度,並不是只要有心,就可以很快地完成學習過程的。
一定要先易後難,一步一來,比如先搞懂語法,嘗試寫一寫demo,接著了解高級特效,實現高級特性,然後自己脫離教程寫一些代碼,最後做項目,大概是這樣的一個邏輯。
別看我說的簡單,其實對於新人來說,要完成這幾道工序並不容易,別看學點基礎語法沒什麽難度,但是真的要上手實踐,可能會遇到很多問題,比如環境配置,IDE安裝和使用,這些搞定之後,代碼語法錯誤、編譯錯誤、執行錯誤,對於新手來說都是很難解決的,如果不借助外力,基本上是無從下手的。
所以,學習編程,沒有你想象的那麽簡單。
遇到問題,不要畏難
就像我剛才所說,如果在學習過程中遇到困難,可能真的很難獨立解決,這種時候應該怎麽辦呢,如果沒有人指導你,那麽就只能夠硬著頭皮自己解決了,解決的方法無非就是百度、谷歌,到網上看看有沒有人遇到和你一樣的問題。
如果你覺得這樣子效率很低,那也可以找一些基礎方面的書籍先看看,了解基本的編程知識,或者看一些網課,加深對知識的理解,然後再去嘗試各種代碼實踐,可能會讓你更加順利一些。
重視基礎,才能走的更遠
很多人覺得學習編程只需要剛才我說的那幾步,學習語法、寫簡單demo,然後學習高級特性,最後著手做項目就可以了。但是這只是最初級的程序員,離開這門語言,他們可能就什麽都不剩下了。
沒有計算機基礎的支撐,他們不明白計算機網絡的原理,不知道為什麽要考慮網絡編程,不明白為什麽要考慮DNS、負載均衡,不知道操作系統的原理,就不能夠理解服務器出問題時的根本原因,無法排查,不懂得數據結構和算法,就不明白為什麽有的程序是這麽寫的,有的集合類是這麽設計的。
重視基礎,是每一個程序員都要做到的一點,離開基礎,其他的東西都是空中樓閣,基礎不紮實,你連談論技術時也不會有底氣,更別說談架構、談業務場景了。
綜上,都是我想給那些自學編程的人的一些建議,自學編程不易,千萬要想清楚了再開始,特別是想要轉行,做程序員,以此謀生的那些人,一定要慎重。
文能碼字,武能coding,是我黃小斜,不是黃老邪噢。
自學編程的朋友,我想給你們這 5 個建議