?作者 | 千山
審校 | 云昭
一年一度的跳槽季又要到了。如今疫情管控放開,就業形勢或會有所回暖,不少開發者正在為“金三銀四”做著準備,那么你知道市場需求量較大的編程語言是哪些嗎?
不久前,國外網站DevJobsScanner針對過去14個月(2021.10-2022.11)的數據進行了分析,從1200萬個開發人員職位需求中,篩選出了對編程語言有明確要求的工作機會,從中總結提煉了2022年度需求量最大的8種編程語言。
其中,Javascript/Typescript毫無懸念地占據了主導地位,有近三分之一的工作機會需要掌握Javascript/Typescript知識,而Python和Java則分別是2022年第二和第三大需求的編程語言,C#緊隨其后。
2022 年編程語言及其各自需求的完整圖表
比較令人意外的是,PHP位列第五。這門有著近三十年歷史的編程語言曾幾度被唱衰,但在這次調查中,研究人員發現,依然有22.6萬份工作是面向PHP的,占比約為10%。而且值得注意的是,2021年10月,PHP在所有開發就業機會中所占的比例約為5%,但到2022年11月,這一比例卻幾乎翻了一番。
1、老而彌堅的語言:曾列入厭棄前五名
“PHP是世界上最好的語言?!痹诰幊陶Z言界,這是一個頗有年頭的梗,甚至發展到后來,多少帶了點黑色幽默。這些年,關于“PHP將亡”、“PHP已死”的言論并不鮮見,不過時至今日,這門語言依然堅挺。
但客觀來說,依然有不少開發人員并不待見PHP,在Stack OverFlow的調查中,PHP甚至入選過最討厭的語言前五名。但一門語言能在歷史長河中存活下來,肯定是有點門道在的。
回顧一下PHP的發展歷程,不可謂不精彩,其興衰起伏可以說折射著整個互聯網的發展脈絡。
PHP的創始人是出生于格陵蘭島的程序員Rasmus Lerdorf。1994年,Rasmus出于自己的工作需要開發了PHP,但他在后來的采訪中透露,他從來沒有想過把它變成一種編程語言。最初,這個工具套件中并沒有任何東西是為了成為工具而設計的。
“我真的不喜歡編程。我開發這個工具的目的,就是為了減少編程的工作,這樣,我就可以簡單地重用那些我不知道如何停止的代碼,我從來也沒有打算過要編寫一種編程語言 [……]。實際上我根本就不知道要如何編寫一種編程語言,我只是不斷地添加下一個邏輯步驟?!?/p>
但就是這種“無心插柳”的行為成為了PHP的起點。而在PC互聯網時代,PHP很快迎來了自己的榮耀之巔。
彼時,線上80%的網站都是用PHP語言開發的,淘寶、雅虎和搜狐都有PHP的身影。當時用PHP做網站前后端不分離,而HTML+CSS+JS+jQuery成為了開發者的標配技能。舉個例子,當時如日中天的社交軟件Facebook有專門的團隊對PHP做了二次性能優化。
非常適用于快速建站的PHP在當時的確稱得上“世界上最好的Web語言”。直到移動互聯網興起,一批以騰訊為代表的互聯網巨頭開始以智能手機為依托,開發各種各樣火爆的移動APP,前后端逐漸分離,PHP也開始沒落,在隨后的幾年中,迅速被Java、Python等其它語言攻城略地。
有人感慨,在一個人人都熱衷于追逐新事物的時代,PHP就像一個不愛炒作、也不想出售故土的老人。這一論調與很多開發者心中的刻板印象十分契合,在他們心中,PHP已經停滯不前好久了。但事實上,如果你愿意花一點時間去了解一下,就可以發現,PHP的官方團隊一直在持續維護迭代新版本。
如今的PHP除了在性能上有所提升外,在Laravel、ThinkPHP等框架方面也做得很優秀。
在2022年12月發布的PHP 8.2版本中,新增支持在traits中定義常量、引入了“Random”擴展和“read-only”類、Disjunctive Normal Form (DNF) 類型,更新了內置web服務器的MIME類型表,減少了各種函數返回的字符串的內存占用,初步支持macOS Instrument的JIT性能分析生成,為Linux啟用arc4random_buf,為隨機字節引入Glibc 2.36以上版本。
PHP的更新節奏不疾不徐??梢钥吹?,在新語言層出不窮的編程世界中,PHP呈現了一種“老而彌堅”、“壯心未已”的姿態。
二、重回前十,歸因還是賺“快”錢
當前,雖然PHP的市場占有率有所下滑,但依舊是Web開發的主要開發語言。不久前,Tiobe公布的2023年1月編程語言排行榜中,PHP爬到了第十位,堪稱“穩穩的幸?!?。
Tiobe公布2023年1月編程語言排行榜
但PHP還是經常為人所詬病。典型的一點是,PHP主要適用在中并發以下的Web項目快速開發和輕量級腳本任務開發,對個人或創業公司建站來說或許是優選,但對于真正的大型項目來說并不適用。
簡單來說,PHP這門語言的優缺點都非常鮮明,這也造成了“恨者自恨、愛者自愛”的常態。
PHP的長處在于:
第一,新手友好,入門門檻低,利于變現:很多人自學幾個月就能做出不錯的東西,能求職、能接單。有開發者曾有感而發:“作為一個半路出家自學轉行互聯網的草根來說,我能夠成功轉行,擺脫自己不喜歡的工作到自己喜歡的工作與生活狀態,可以說完全仰仗基于PHP的幾個開源軟件?!?/p>
第二,開發速度快,開發成本低:一個小中型Web項目,一至三個月就可以出來。而且PHP的經典組合“LAMP(Linux + Apache + Mysql + PHP)”均是開源免費的,在控制成本方面立竿見影。
第三,跨平臺性強:由于PHP是運行在服務器端的腳本,可以運行在UNIX、LINUX、WINDOWS、Mac OS下。新發布的PHP 8.2版本 初步支持Windows for ARM64平臺上的跨平臺創建,分配JIT緩沖區Opcache靠近PHP.text字段,以允許使用直接的IP相關調用和跳轉。
PHP的短板同樣一目了然:
第一,工作機會雖多,但整體待遇偏低:無論在一線城市還是二三線城市,PHP崗位需求量都不少,但薪資待遇只能說中規中矩,甚至普遍靠后。比較直觀的原因是,當技術處于上升期,在流行前沿,背靠巨頭好乘涼時,收入自然水漲船高,但當技術過了巔峰期,正在下坡,從業者里的“大神”比重自然下滑,收入水平也很難提升。
第二,語言缺乏深度屬性,成長空間小。由于入門PHP不需要用到底層特性,這讓單一的PHPer很難獲得接觸底層代碼的機會。如果不想在一棵樹上吊死,就必須在學完PHP后再去學習其他語言,比如Java、Go之類的,才能真正打開技能拓展空間。
第三,適用范圍有限,很少用于大型項目開發。就像有的開發者認為的,PHP能開發的Java同樣能開發,比如PHP雖然也可以實現多線程高并發功能,但主要針對中小型網站,如果是像大型商城在線購物系統,選擇Java的實戰效果往往更好。
3、最好的語言:被唱衰的“命硬”玩家
總體來說,關于編程語言的鄙視鏈一直都有,沒有什么語言會獲得所有人的好評。有人討厭PHP,就像有人討厭JavaScript、C++或Python一樣稀松平常。但不可否認的是,PHP的確非常適合Web開發,快速建站,而且入門快、成本低、開源框架多,也正如前文所提到的,它也確實提供了大量的就業崗位。
在知乎論壇,“堅持使用PHP的你,如今有什么感悟?”這一問題下,常見的感慨是:雖然很多人以為PHP已經是明日黃花,但對于個人創業者和中小企業來說,PHP仍然是快速開發項目的首選。即使被唱衰那么多年,PHP如今還是很活躍,就像下圖中這位朋友所描述的——真是“命硬”。
知乎用戶回答節選
參考鏈接:
https://www.devjobsscanner.com/blog/top-8-most-demanded-languages-in-2022/
https://zhuanlan.zhihu.com/p/144582666
https://www.zhihu.com/question/549502049
https://baijiahao.baidu.com/s?id=1751714923061441454