非科班出身,如何學好編程成爲程式設計師?

隔離丶七日情


科班出身與非科班出身在職業起步時確實有差距,成熟的科班會全面培養人的思維框架,總體思想。先不說動手能力,起碼設計上會有一個略微全面的思路。而非科班出身的,總分為兩類,有人教、自學。有人教的話,就看教法和科班是不是相似了,這裡沒法研究,也就不多說明了。

下面主要說說自學的非科班出身程序員,首先既然能下定決心自學成為程序員並以此為業(學了就可以有多難),那麼我認為必定是興趣與熱愛,否則稍有懈怠就容易堅持不下去。上段也說了,科班出身只是優於職業生涯的起步階段,實際工作的實戰經驗要比理論教學有用得多得多,你理論再厲害,自己能說一個月,做不出產品來就和沒有一樣。而非科班出身的程序員多數由於熱愛,會逐步專研、實踐、再學習,理論知識在現在這個網絡環境下,很容易學到,所以也會在工作中很快追上科班出身的,這很正常。

總結,普遍情況來說,科班出身的起步有優勢,非科班的長久有優勢,重中之重是工作實踐,實踐中逐步補強自己,誰更能堅持下去,誰的路更寬。

以上回答來自一個非科班出身的13年經驗的老頭。^O^


十字路口的交易


目前程序員市場供求關係不平衡,大量的“野生”程序員開始搶“正宮”的飯碗,自然少不了引起,某些自豪感爆棚的科班程序員的排斥。

非科班出身的程序員的弱勢

非科班出身,也就是在學校裡學得不是計算機相關專業的課程,這類程序員在職場中要承受更多的壓力。

程序員這個行業有個鄙視鏈:本科程序員是老大,專科程序員低人一等,非科班出身的程序員?職場偏見很嚴重。

程序員非科班出身接觸編程的時間一定晚於其他兩類程序員,無論是在理論,還是技術上都處於劣勢,也意味著在思維方式、解題經驗方面的落後。

這也是為何科班出身的程序員在面對非科班選手時,往往具備壓倒性優勢的原因。

所以如果題主是剛剛想如程序員這個行業的話,理解這些也是必要的。

非科班出身的程序員,不僅要面對科班出身者的技術優勢,還要面臨職場偏見,儘管壓力重重,但只要夠努力,這一切都不是問題。

“曹巍是學「材料成型機控制工程專業」的,自學了 Java,隨後進入一家軟件企業,擔任元數據產品開發。從新人開始,曹巍一邊工作一邊積累自己的技術經驗,3年後,曹巍進入某數碼集團負責技術架構。”

那麼,非科班出身,如何成為程序員?

  • 興趣是關鍵,選好編程語言

還是要強調興趣很重要,不要在不感興趣的地方浪費時間,那樣你會超級累!

然後,給自己設定一個學習方向,技術一直在發展,編程語言也那麼多,選擇更加友好的語言,比如Python。

用簡單的編程語言可以讓你更容易達到自己選定的目標,這樣也會更有動力去進一步學習。

再者,Python現在還是很熱門的,當然,這只是一個小小的建議。

在學習編程語言的時候,不要太盲目,給自己定個計劃表吧,以Python為例。

我從什麼地方開始學Python?

多久能掌握Python?

學到什麼程度,就算掌握了這門語言?

學完Python後,我該做怎樣的拓展學習?

……

  • 多練習,多做項目

對於程序員來說,邏輯思維也非常重要,多練習可以提升自己的邏輯思維。

所有的技術最後都要付諸與實踐,多參與項目能幫助積累更多經驗,你的項目操作能力,也將成為簡歷上的重要證明。

不過,一定要在基礎打牢之後在向項目下手,並且建議選擇容易出成果的項目去學習。

  • 職業發展的選擇

非科班出身程序員在找工作時可能會受到侷限,因為許多大公司還是會優先考慮學歷的。

而一般的創業公司會更加看重你的個人能力,對於需要什麼樣的程序員,什麼樣的程序員是夠格的,他們有自己的標準。

簡而言之,計算機專業的學位,並不是成為程序員的必要條件,但如果希望成為程序員,那麼將要在學習和實踐方面付出更多的努力。


W3Cschool


編程與數學

數學是成就卓越開發人員的必備技能,具體問題具體分析,並不是所有的研發人員都需要很強的高等數學。

文檔寫作

良好的寫作能力,和表達能力。

算法

良好的算法功底,這個要看你你所從事的系統開發了

閱讀優秀的源碼

學會閱讀別人的代碼,github上有許多優秀的開源源碼。

答題、逛論壇、看技術帖子,加入開源論壇,交流、思考、分享


若是涼夜已成夢


學好編程的關鍵在於強力的實踐,建議先找一個好方向入門,比如Java或Python編程,之後儘量找一些好的項目進行實踐


分享到:


相關文章: