最近看到在學習交流群里總有不少打算自學編程的同學問一些問題:
- 非計算機專業的能學好編程嗎?
- 學什么編程語言最好找工作?
- Java和Python哪個更適合自己?
- 學習前端需要學習哪些知識?
- ……
總感覺這是些讓人哭笑不得的問題。哭,是因為有這樣問題的人還沒有真正做好學習編程的準備;笑,是因為他們知道主動地去尋求幫助,但是,你會發現,一般凡是這樣的問題,資深的老程序員根本不屑于回答,只要回答的肯定是新手,沒準是另外一個需要自我安慰的人。
計算機專業的學生,在學校學習的知識已經嚴重與工作中企業需要的技能脫軌,自學耗時耗力,技術更新那么快,等剛學會就很可能過時了,別說高薪,就算是就業也會遇到不小的問題。
小千通過總結規律,發現以下5類群體可能不適合自學編程,更需要的是老司機帶路。
一、缺乏對編程正確認知的人
選擇一門語言,就堅持學下去,不要朝秦暮楚,左右搖擺,選擇恐懼癥犯了。這樣,我們的大部分時間都花在選擇比較上了。其實,任何一門語言,都會有其用武之地,不在乎語言本身,而在乎我們把專門語言用的怎么樣。但選擇一門最近火熱的語言,可以更容易的進入到這個行業。
二、不能系統的制定學習路線的人
自學最麻煩的問題,就是不知道該學什么,感覺A要學,B也要學。因此,定制學習路線很重要。學習路線的獲取,可以聽取周圍大咖的建議。如果沒有,則可以找培訓機構的課程表來看看 。
自學的學習路線一定要足夠精簡,因為你沒有大量的時間。一定要夠入行就可以了,更多的知識等到入行后再學習,完全可以。
學習方式通常有兩種。第一從底層學習到應用層,第二從應用層學習到底層。
第一種的好處就是扎實,可以做到處變不驚,知其所以然。但是會花費大量的時間。
第二種的優勢是,可以快速的看到學習的效果。但可能對其內部實現很迷茫。
對于小白這種自學的人員來說,更推薦第二種,先看效果,保持興趣,入行之后,再學習底層,加深了解。
三、自制力差的人
業余時間自學,與脫產全日制學習,最大的區別,就是你沒有整塊的時間投入到學習中。
這對于入門的人來說還好,但是對于沒有入門的人來說,就很困難。必須要先集中一段時間,先入個門。如果想學會,而不是了解即可,必須要堅持學習,比如每天晚上8-11點是學習時間,那么就一定好堅持,除非地震,除非媳婦生小孩,要不一定要堅持學習。
實在不行,即使稍微減少點時間也好,千萬不能停止。一旦停止,你就要花大量的時間去思考之前的進度,去銜接。就耽誤時間了。說穿了,還是積跬步才能之千里。
四、不知道合理篩選與獲取學習資料的人
如果有系統的學習資料就非常好了。小千每周都會給大家分享免費的教程,圖書,都可以作為學習資料。但現在也面臨一個問題,就是資料太多,落花漸欲迷人眼,無從選擇。因此還是那句話,試著選擇一個大眾評論好的就可以啦,不要天天在對比資料的優劣,把你選擇學好就ok啦。
五、抱著學到很牛再找工作的人
實際工作中學習的速度,要遠比自學的速度快。你可以經常參見初級程序員面試,如果有機會入行,立即入行,可能前期收入少些,但是你的成長會非常快的呢。
拿學Java為例,同樣是花費5個月時間,你自學可能連一個稍微復雜的動態效果都做不出來,而人家報培訓班的并認真學習的學員已經可以獨立開發項目了,一年后呢?兩年后呢?人和人的差距就這么拉開了!用錢買時間,沒有比這更劃算的生意!