作者 Alexander Petkov 編譯 Mika 觀看更多國外公開課,點(diǎn)擊"閱讀原文" 對于在2018年想學(xué)習(xí)編程語言的人來說,本篇文章是值得參考的指南。 需要明確的是,這并不是介紹最熱門的語言,然后拋出各種名稱和流行語。而是根據(jù)2018年IT行業(yè)現(xiàn)狀、趨勢和客觀的預(yù)測。 本文列出了十個(gè)在2018年學(xué)習(xí)的編程語言,旨在幫助你選擇適合自己、值得花時(shí)間和精力去掌握的語言,并且?guī)椭沩樌_啟開發(fā)人員的職業(yè)生涯。 當(dāng)選擇哪種編程語言時(shí),開發(fā)人員通常會考慮以下四個(gè)因素: · 薪資 · 熱門度 · 市場需求 · 易于學(xué)習(xí)和工作 本文對每種語言將介紹以下內(nèi)容: · 簡短的介紹。讓你熟悉這門語言適合什么類型的職業(yè),以及其優(yōu)勢所在; · TIOBE 和 GitHub Octoverse的語言熱門度 · Indeed.com 和 StackOverflow的2017年語言薪酬比較 · 谷歌趨勢。該語言過去五年的需求趨勢 最后,列出的四種語言在過去幾年中迅速流行起來,預(yù)計(jì)2018年的需求將更高。 1. JavaScript 根據(jù)StackOverflow的年度調(diào)查,JavaScript是最熱門的語言,62.5%的受訪者表示在使用JavaScript 。 這無疑是網(wǎng)絡(luò)的主流語言,過去十年里JavaScript的發(fā)展非常迅猛。Stack Overflow的聯(lián)合創(chuàng)始人Jeff Atwood說道: “任何可以用 JavaScript 編寫的應(yīng)用最終都將用 JavaScript 編寫?!?/em> 考慮到這一點(diǎn),可以肯定的是2018年將不會缺少JavaScript機(jī)會。 JavaScript適用于Angular、React、Ember、Backbone等前端框架以及Node.js運(yùn)行環(huán)境,讓你可以高效地在后端運(yùn)行JavaScript。StackOverflow 2017 年最流行的框架中前四名有三個(gè)是基于JavaScript的。 如果你希望立即看到工作成果,比如如制作交互式Web組件,那么JavaScript是一個(gè)不錯(cuò)的選擇。請記住,使用JavaScript意味著你應(yīng)該熟悉HTML和CSS,這是網(wǎng)頁的基本構(gòu)成。 Apache Cordova或React Native等工具允許在移動應(yīng)用中使用JavaScript。甚至可以通過Electron等項(xiàng)目進(jìn)行游戲開發(fā)或桌面應(yīng)用開發(fā)。 熱門度和薪資情況 1. TIOBE 排名: #6 ( 2018.1) TIOBE排名是編程語言熱門程度的指標(biāo)。 該排名根據(jù)全球?qū)I(yè)工程師、課程、第三方供應(yīng)商和搜索引擎的數(shù)量。 2. GitHub Octoverse: #1 統(tǒng)計(jì)于2017年底統(tǒng)計(jì)。 在GitHub上最流行的語言pull request(單位為百萬)。 GitHub擁有2400萬用戶的開源項(xiàng)目,這些開源項(xiàng)目在6700萬個(gè)存儲庫中,由337種不同的編程語言所編寫。 3. Indeed.com 美國薪資 : 中等 Indeed.com是全球就業(yè)求職搜索引擎。目前覆蓋60多個(gè)國家和28種語言。 2010年10月,Indeed.com超過Monster.com成為美國訪問量最高的求職網(wǎng)站。 4. StackOverflow 全球薪資: 中等 數(shù)據(jù)來自2017年,超過6.4萬名開發(fā)者參與調(diào)查。 StackOverfllow是最大的開發(fā)者社區(qū),每月訪問量超過5000萬。 自2011年以來,StackOverflow每年都會對開發(fā)者進(jìn)行調(diào)查,詢問他們最喜歡的技術(shù)、代碼和工作習(xí)慣。 流行趨勢 過去5年的流行趨勢: 穩(wěn)步增長 結(jié)論 JavaScript無疑是2018年及以后最流行的語言之一。 由于大多數(shù)受訪者的職位是初級的,因此這種類型的語言薪資很難在排名中高居榜首。不像那些不太熱門的語言,高級職位占比更大。 2. Swift Swift是蘋果于2014年發(fā)布的一種相對較新的編程語言,用于開發(fā)iOS或MacOS應(yīng)用。 與Objective-C相比,它在可用性和性能方面有所改進(jìn), Objective-C是用于iOS和OS X操作系統(tǒng)的語言。 Swift通常很受開發(fā)者的青睞,在2015年排名第一之后,在2017年最受喜愛的語言排行榜中排名第四。如果你選擇Swift相關(guān)的職業(yè),你很可能會喜歡它。 如果你想進(jìn)入移動開發(fā)領(lǐng)域,Swift是高薪的不錯(cuò)選擇。通常,iOS應(yīng)用比Android應(yīng)用更賺錢。 熱門度和薪資情況 1. TIOBE 排名: #12 2. GitHub Octoverse: #13 3. Indeed.com 美國薪資: 高 4. StackOverflow 全球薪資: 高于平均水平 流行趨勢 過去5年的流行趨勢:急劇上升 結(jié)論 對于iOS和macOS應(yīng)用來說,比起它的前身Objective-C,Swift是一種更新更好用的語言。 僅僅幾年的時(shí)間,Swift的人氣已經(jīng)很高,在大多數(shù)排行榜上已經(jīng)超過Objective-C。這種語言被開發(fā)人員所喜愛,而且薪資很高。 3. Python Python是一種通用語言,如今幾乎無處不在。你可以在網(wǎng)絡(luò)應(yīng)用、桌面應(yīng)用、網(wǎng)絡(luò)服務(wù)器、機(jī)器學(xué)習(xí)、媒體工具等地方看到它。 NASA、谷歌等大型公司都在使用Python,其中Python創(chuàng)建者Guido van Rossum在谷歌工作的八年,主要都在使用Python。 Python代碼整潔、可讀、結(jié)構(gòu)良好。 Django和Flask等基于Python的Web開發(fā)框架已經(jīng)越來越受歡迎。此外,該語言還配備了高質(zhì)量的機(jī)器學(xué)習(xí)和數(shù)據(jù)分析庫,如Scikit-learn和Pandas。 總體而言,Python的職業(yè)發(fā)展路徑各不相同。對于初學(xué)者開發(fā)人員來說,這是不錯(cuò)的選擇,因?yàn)樗歉呒壍模子陂喿x和理解。 熱門度和薪資情況: 1. TIOBE 排名: #4 2. GitHub Octoverse: #2 3. Indeed.com 美國薪資: 高 4. StackOverflow 全球薪資: 高 流行趨勢 過去5年的流行趨勢:顯著上升 結(jié)論 Python無疑是當(dāng)今和不久的將來不錯(cuò)的選擇。這門語言幾乎在各個(gè)方面都名列前茅。 4. Java Java可以說是最受歡迎的編程語言,因?yàn)?0%的財(cái)富500強(qiáng)公司都在使用它。Java那句著名的"write once, run anywhere"闡述了Java的價(jià)值所在,強(qiáng)大的Java虛擬機(jī)(JVM)讓它做到跨平臺兼容。 Java的熱門職業(yè)是后端開發(fā)人員、大數(shù)據(jù)開發(fā)人員、嵌入式系統(tǒng)工程師以及Android開發(fā)人員。雖然Java并非目前最“流行”的語言,但Java的使用頻率非常高,在未來十年甚至更長時(shí)間內(nèi)都是如此。 正因?yàn)槿绱耍憧梢源_信在你的城市有大量的Java工作職位,本文列舉的許多語言都不具有這里優(yōu)勢。因此,如果你喜歡使用Java,找到合適的工作只是時(shí)間問題。 熱門度和薪資情況: 1. TIOBE 排名: #1 2. GitHub Octoverse: #3 3. Indeed.com 美國薪資: 中等 4. StackOverflow 全球薪資: 高于平均水平 流行趨勢 過去5年的流行趨勢:下降 結(jié)論 Java可以說是最受歡迎的編程語言,而且受訪者中工作職位多樣,使得Java在工資排名中非常高。 5. C ++ C ++是高效且靈活的語言,于1985年創(chuàng)建。由于其性能、可靠性以及能夠在各種環(huán)境下使用, C++的市場需求很大。 許多大型系統(tǒng)已經(jīng)使用C ++創(chuàng)建和維護(hù),包括Microsoft,Oracle,PayPal和Adobe等。 使用C ++通常包括開發(fā)桌面應(yīng)用,尤其是性能密集型任務(wù)。雖然該語言相當(dāng)復(fù)雜,但通過熟悉C++你會更深入地理解語言是如何工作的,例如為低內(nèi)存操作提供工具。 熱門度和薪資情況: 1. TIOBE 排名: #3 2. GitHub Octoverse: #6 3. Indeed.com 美國薪資: 高 4. StackOverflow 全球薪資: 高 流行趨勢 過去5年的流行趨勢:起伏不定 結(jié)論 C++是非常流行的語言,如果你花時(shí)間去掌握它,那么工作的選擇面會很大,而且工資通常高于平均水平。 6. Ruby Ruby是最受歡迎的編程語言之一。Ruby易于開發(fā)人員使用,標(biāo)語是“ 程序員最好的朋友”。 Ruby是一種高級語言,旨在通過幾行干凈、可讀的代碼實(shí)現(xiàn)很多功能。這需要花費(fèi)大量精力,因此與其他語言相比,Ruby在效率方面相對較慢, 但它肯定會提高你的工作效率。 寫得很好的Ruby代碼看起來就像用英文句子。對于初學(xué)者來說,這是很好的選擇。 Ruby主要用于其最流行的框架Ruby on Rails。Ruby on Rails是一個(gè)Web框架,它將Ruby的所有想法封裝為強(qiáng)大的Web工具。Rails的巨大生產(chǎn)力讓其成為創(chuàng)業(yè)公司的共同選擇。 選擇Ruby on Rails絕對是一個(gè)不錯(cuò)的選擇,因?yàn)樵摽蚣芤子谑褂茫沂杖牒芨?。唯一缺點(diǎn)在于,比起前面提到的語言Ruby不是太該受歡迎。因此,在尋找使用Ruby的職位時(shí)會有一定限制。 熱門度和薪資情況: 1. TIOBE 排名: #11 2. GitHub Octoverse: #4 3. Indeed.com 美國薪資: 高 4. StackOverflow 全球薪資: 高 流行趨勢 過去5年的流行趨勢:下降 結(jié)論 Ruby是不錯(cuò)的選擇,因?yàn)樾匠曦S厚,而且語言本身也很有趣。 唯一的缺點(diǎn)是Ruby不像其他語言那樣受歡迎,找工作時(shí)可能會有一定局限性。但注意,Ruby(以及Ruby on Rails)常常是那些經(jīng)常采用遠(yuǎn)程辦公的創(chuàng)業(yè)公司的首選。 7. Rust Rust由Mozilla基金會贊助,在StackOverflow年度調(diào)查中連續(xù)第二年被開發(fā)人員評為最受歡迎的語言。這是一種相對較新的語言,首次出現(xiàn)在2010年,如今已經(jīng)較為流行,預(yù)計(jì)將來還會進(jìn)一步提高。 Rust是一種編譯型語言,在用例和性能方面經(jīng)常與C進(jìn)行比較。主要區(qū)別在于Rust是內(nèi)存安全的。在C代碼中最常見的錯(cuò)誤有懸掛指針(dangling pointers),緩沖區(qū)溢出(buffer overflows)或者內(nèi)存錯(cuò)誤。Rust是為了避免這些而創(chuàng)建的,從而讓你在編寫時(shí)(在代碼運(yùn)行前)不可能犯這類錯(cuò)誤。 由于需要掌握各種規(guī)則來實(shí)現(xiàn)記憶安全性,對于初學(xué)者來說學(xué)習(xí)Rust有一定難度。然而,有經(jīng)驗(yàn)的開發(fā)人員喜歡使用Rust,而且在未來幾年會有很高的市場需求。 薪資方面,根究StackOverflow的2017年調(diào)查,Rust薪資較高,全球排名第二。 選擇Rust的另一個(gè)理由是,該語言是由IT領(lǐng)域家喻戶曉的Mozilla開發(fā)的。 過去5年的流行趨勢:上升 8. Elixir Elixir是另一種新語言,首次出現(xiàn)于2011年,接著很快流行起來。 Elixir受到Erlang的啟發(fā),Erlang是愛立信在1980年代開發(fā)的一種語言,這是用于高度并發(fā)性的最佳工具之一。Elixir的開發(fā)者JoséValim表示,他特別喜歡Erlang,但也看到了一些改進(jìn)余地。對于開發(fā)者來說,Erlang最大缺點(diǎn)是語法古怪,缺乏直觀的包管理。 因此,Elixir出現(xiàn)了。這將Ruby的易于使用和生態(tài)系統(tǒng)與Erlang相結(jié)合。 Elixir主要用于網(wǎng)絡(luò)開發(fā),收入較高,但職位選擇有限。該語言越來越流行,因此如果你所在的城市有各種各樣的IT公司,Elixir開發(fā)者可能會受到追捧。 薪資方面,根據(jù)StackOverflow 2017年調(diào)查,在全球薪資中排名第三。 過去5年的流行趨勢:上升 9. Scala Scala的名稱來自于"Scalable Language(可伸縮性語言)"。Scala代碼在Java虛擬機(jī)(JVM)上運(yùn)行。 LinkedIn、Twitter和The Guardian等大型公司都在其代碼庫中使用 Scala,因此可見Scala很流行。 對于初級開發(fā)者來說,Scala較復(fù)雜。但是適應(yīng)了該語言的人會有較好的職業(yè)發(fā)展,因?yàn)镾cala開發(fā)人員的職位選擇將越來越多。 薪資方面,根據(jù)StackOverflow的2017年調(diào)查,Scala在全球薪資中排名第十,并在美國居第一位。 過去5年的流行趨勢:上升 10. R語言 R是一種編程語言,用于統(tǒng)計(jì)、圖形表示和數(shù)據(jù)分析。R語言是數(shù)據(jù)科學(xué)家的首選。如果你對數(shù)據(jù)科學(xué)領(lǐng)域感興趣,那么R對你來說是不錯(cuò)的選擇。 過去5年的流行趨勢:穩(wěn)步上升 原文鏈接: https://medium./best-programming-languages-to-learn-in-2018-ultimate-guide-bfc93e615b35 |
|