-
1 # 吊打華偽海軍
-
2 # stormzhang
看了一圈,很多人的回答都不夠直接,對於新手來說,最需要的是最直接有效的答案,我來怒答一記。
首先我的觀點是,程式語言只是工具,每種程式語言都有自己的優勢與適用的場景,程式語言是幫你解決實際問題的,而不是用來辯論那種語言是最好的,很多企業都是用不同的語言來解決不同的業務問題,比如有創業公司想快速開發,可能會選擇 Ruby、Rails,有的要解決實際的效能問題,注重高併發、低延遲那也許會選擇 Go,有的企業追求穩定成熟的解決方案,可能會選擇 Java,有的專注在 iOS、Android 平臺的開發,那就會選擇 Objective-C 和 Java 等等等,有些企業甚至會混合不同的程式語言,來解決不同的業務場景。
但是題主說了,題主是新手,那姑且認為你以前沒有 什麼程式設計經驗,那麼現在想要學習一門程式語言的話,其實主要關注三點:
未來前景;是否易學;是否好找工作;其實從 0 自學的話,未來前景很重要,其實也就是所謂的風口,雷軍說過:站在風口,豬都能飛。足以說明風口非常重要,網際網路 PC 時代,PHP、.NET、Java Web 開發網站很火,移動網際網路時代 Android、iOS 是主流平臺,自然 Java 和 Objective-C 比較火。
而現在移動網際網路早已不如前幾年那麼大熱,會這個的人很多,很多企業的需求也沒那麼大,要求卻很高,所以說現在如果再想學程式設計我是不建議再學移動開發了。未來雖然無法準確的預測,但是我們可以看到一些大方向:
未來五年甚至十年都將是人工智慧的天下,而人工智慧領域的應用語言 Python 毫無疑問是主流,Go 次之,但是還遠比不了 Python 在人工智慧領域的應用,從 Stack Overflow 的調查報告「The Incredible Growth of Python - Stack Overflow Blog」也可以看到,Python 在今年大熱,已經成為今年最火的語言,再加上人工智慧大量依賴資料,Python 在資料分析、資料探勘方面也大有發揮之處,所以,Python 已經成為未來最火的語言之一了。
當然有人會問了,Python 這麼火熱,以後會不會競爭很大?
Python 之所以這麼火熱,是因為現在大家都對趨勢很敏感了,越來越多的人都在焦慮自己會淘汰,所以很多其他程式語言的從業者都在關注、學習、使用 Python,但是真正敢於放棄本職工作,全職轉行 Python 開發的人跟整個程式設計行業的人相比還是少數的,更何況,在一個新的時代即將到來,相對應的需求本就大,所以,一旦人工智慧技術有所成熟與突破,Python 的需求還會更大。
再說到易學性,其實 Python 相比較大部分語言來說,都算是很容易上手的,語法很清楚,沒有那麼多複雜的概念,適合新手學習。
而除了人工智慧之外,Go 語言的潛力也很大,Go 在處理高併發的分散式系統上應用很廣泛,效能很高,而且未來在區塊鏈技術相關應用中也會有不少發揮,還是 Google 的親兒子,但是 Go 的易學性不如 Python,對新手還是有一定門檻的,而且應用的廣泛性也不如 Python。
最後說下 Java,Java 這種老牌程式語言,雖然一直被詬病語法臃腫,但是其實隨著 Java 版本的更新,已經逐漸支援了很多新語言的特性,並且因為 Java 很成熟,不止語言成熟,很多成熟的解決方案、中介軟體都是基於 Java 的,Java 可用的庫太多了,以至於現在大部分公司都離不開 Java,而且 Java 還可以用來開發 Android 移動應用,所以也許未來 Java 不是最有前景的語言,但是 Java 在未來很長一段時間內都會是不可或缺性的語言,相關的工作崗位也自然一直有需求,而且 Java 語言的易學性也很高,適合新手,大部分大學甚至早都開設了 Java 課程。
所以,綜上,結合未來的前景,以及對新手的易學性,是否好找工作幾個點,我推薦題主現在如果想要學習一門程式語言的話,首選 Python,Java 次之,最後考慮下 Go。
回覆列表
未來十年,二十年用什麼語言不知道,但未來五年還是以java為主體吧,畢竟國內大公司像淘寶,京東的後端用的java,支援高併發和穩定性高是主要原因,而且開源社群和第三方工具很多很多,遇到問題也方便結局,當然c和c++在遊戲伺服器領域的老大地位目前也沒有什麼語言可以挑戰,py和js在各自領域也有不可替代的作用,所以也沒什麼最有前景的語言一說,隨著人工智慧和深度學習的發展,未來一些簡單的程式可能都會交給機器人來開發