{eval=Array;=+count(Array);}
我從事PHP開發(fā)也有近9年的時(shí)間了,當(dāng)然途中也接觸過其它的編程語(yǔ)言??傮w上來(lái)說(shuō),多數(shù)PHPer很容易觸碰到天花板,但也不排除有一些PHP高手深耕PHP的底層知識(shí)。
PHP的定位是弱類型腳本語(yǔ)言,它的開發(fā)速度和效率都很不錯(cuò)。所以給人的感覺是它很簡(jiǎn)單,而國(guó)內(nèi)PHP更多的應(yīng)用場(chǎng)景就是:中小型網(wǎng)站開發(fā)、大型網(wǎng)站前端展示層、一些后端服務(wù)等。很多5年經(jīng)驗(yàn)的PHPer和3年經(jīng)驗(yàn)的PHPer天天做的事都差不多,這也就造成了很多PHPer的焦慮感。
從未來(lái)技術(shù)態(tài)勢(shì)上說(shuō),PHP在未來(lái)相當(dāng)長(zhǎng)的一段時(shí)間內(nèi)不會(huì)被淘汰,但是,未來(lái)會(huì)有越來(lái)越多的PHPer來(lái)和我們競(jìng)爭(zhēng)。打個(gè)比方,如果你是老板,你招一個(gè)30歲8年以上的PHPer要1000元,招一個(gè)25歲5年的PHPer只要500元,你會(huì)選哪個(gè)?相信很多老板都會(huì)選后者,因?yàn)檫@2位PHPer做的事差不多,更偏向于選擇年輕人來(lái)做事。
從這種態(tài)勢(shì)上說(shuō),我建議大家如果精力足夠,完全可以考慮轉(zhuǎn)Java的。Java一直以來(lái)都是編程界的王者,使用人數(shù)在所有語(yǔ)言中是最多的。國(guó)內(nèi)技術(shù)崗中,也就Java的崗位和薪資較其它編程語(yǔ)言的要高。另外Java和PHP的定位不同,使用范圍不同,發(fā)展前景更可觀,比如說(shuō):
Java生態(tài)圈很好,市面上各類需求在Java這里都能找到成熟的解決方案;比如現(xiàn)在流行的大數(shù)據(jù)、微服務(wù)等都能快速上手;
Java在APP開發(fā)領(lǐng)域也占一大部分市場(chǎng),Android開發(fā)者也需要使用到Java,多了一種選擇;
國(guó)內(nèi)知名互聯(lián)網(wǎng)公司以前可能不是用Java作為主要編程語(yǔ)言的,現(xiàn)在也都轉(zhuǎn)向Java懷抱了,再說(shuō)銀行不少系統(tǒng)也是Java系的,跟著大勢(shì)走,總是沒錯(cuò)的。
作為BAT的Java開發(fā)工程師,我也算從PHP轉(zhuǎn)到Java的。我在實(shí)習(xí)時(shí)候用的是thinkPHP框架,轉(zhuǎn)正后開始用Java寫項(xiàng)目,我來(lái)分析下我的經(jīng)驗(yàn)。
同樣都是后端編程語(yǔ)言,這種轉(zhuǎn)變的技術(shù)難度其實(shí)很低了。與PHP比起來(lái),很多計(jì)算機(jī)專業(yè)出身的工程師,在學(xué)??赡軟]學(xué)過php語(yǔ)言,但是一定學(xué)過Java語(yǔ)言,因此基礎(chǔ)知識(shí)方面完全不用擔(dān)心。通常PHP工程師也是使用各種框架的,轉(zhuǎn)到Java無(wú)非就是要學(xué)習(xí)新的框架,了解常見的SpringBoot,SSM以及使用場(chǎng)景逐漸減少的SSH框架,而目前這三種框架的相關(guān)資料書籍可以說(shuō)是浩如煙海,唾手可得,對(duì)于一個(gè)能夠熟練使用PHP進(jìn)行開發(fā)的程序員來(lái)說(shuō),通常一周的下班時(shí)間就足夠?qū)pring框架有大概的了解了。
Java web的安全性要比PHP穩(wěn)定得多。
前段時(shí)間,公司內(nèi)部發(fā)了一封郵件,表示thinkphp的某個(gè)版本有漏洞,所有使用該版本框架的服務(wù)必須在指定時(shí)間內(nèi)升級(jí)或更換框架,否則被公司掃描出來(lái)后,不論是開發(fā)人員還是經(jīng)理,都需要背處罰。當(dāng)時(shí)公布的有漏洞的框架不僅thinkPHP,還有很多其他語(yǔ)言的多種多版本框架,但是其中明確的是沒有Java,這足以說(shuō)明Java web框架的安全性。這也能從側(cè)面說(shuō)明重要的項(xiàng)目,大家一定更傾向于使用java進(jìn)行開發(fā)。
經(jīng)過上面提到的安全性問題排查,我們組的項(xiàng)目就有從PHP轉(zhuǎn)到Java的服務(wù),畢竟大家都不想守著一個(gè)可能是定時(shí)炸彈(可能有漏洞的框架)的平臺(tái)。目前,我們部門內(nèi)據(jù)我所知,使用PHP的同事越來(lái)越少,越來(lái)越多的人接著某個(gè)機(jī)遇轉(zhuǎn)向了Java開發(fā)。而且,根據(jù)我在朋友圈看到的獵頭發(fā)布的消息,也能確定Java開發(fā)相關(guān)的職位明顯多于PHP(和Python)。
因此,如果有機(jī)會(huì),非常建議各位PHP開發(fā)工程師多了解Java開發(fā)的相關(guān)知識(shí),因?yàn)楹苡锌赡芟乱粋€(gè)項(xiàng)目,就需要你使用Java語(yǔ)言進(jìn)行開發(fā)了,提前做好準(zhǔn)備的人才能迎風(fēng)起飛。
以上是我的淺見,如果對(duì)你有幫助,歡迎點(diǎn)贊留言,與我交流。
我是蘇蘇思量,來(lái)自BAT的Java開發(fā)工程師,每日分享科技類見聞,歡迎關(guān)注我,與我共同進(jìn)步。
2
回答10
回答10
回答10
回答10
回答1
回答5
回答3
回答8
回答10
回答