php語(yǔ)言未來(lái)的發(fā)展趨勢(shì)
權(quán)國(guó)清,河南科技大學(xué)本科畢業(yè)生, 5年多PHP軟件項(xiàng)目開(kāi)發(fā)經(jīng)驗(yàn)?,F(xiàn)就職于鄭州金擎電子科技有限公司,帶領(lǐng)團(tuán)隊(duì),參與開(kāi)發(fā)鄭州本地O2O電子商務(wù)(有卡優(yōu)惠、九鼎團(tuán)購(gòu)、九鼎商城)等商業(yè)項(xiàng)目以及各類在線支付(支付寶、手機(jī)支付、銀聯(lián)在線支付、)及TTG(U聯(lián)生活)、微信接口、退款功能等。目前承擔(dān)WAP站和網(wǎng)站新版(優(yōu)惠券或有卡優(yōu)惠)等項(xiàng)目的程序設(shè)計(jì)。PHP5.5在前幾個(gè)月發(fā)布了、Google開(kāi)始支持PHP。種種動(dòng)作,再次預(yù)示了PHP黃金時(shí)代的來(lái)臨!近日,我們電子郵件聯(lián)系到他,請(qǐng)他談一談PHP發(fā)展的現(xiàn)狀和前景。以下是交流信件原文:
你最開(kāi)始做程序覺(jué)得最難的是什么?
高中的時(shí)候開(kāi)始更多的接觸計(jì)算機(jī),大學(xué)的時(shí)候自然選擇了網(wǎng)絡(luò)技術(shù)專業(yè),對(duì)這方面的東西比較感興趣。所以畢業(yè)以后就堅(jiān)持打算做程序員,去做軟件開(kāi)發(fā)方面工作。畢業(yè)后就在西安軟件園進(jìn)行了一段時(shí)間的實(shí)習(xí),實(shí)習(xí)結(jié)束時(shí)期,遇到08年全球金融危機(jī), 沒(méi)有找理想的工作,只是從事和計(jì)算機(jī)相關(guān)的工作。后來(lái)有一個(gè)機(jī)會(huì),就到無(wú)錫(國(guó)家)軟件園實(shí)訓(xùn),再一次的技術(shù)進(jìn)修,對(duì)相關(guān)技術(shù)做了更系統(tǒng)的學(xué)習(xí),這之后, 才正式開(kāi)始做開(kāi)發(fā),到無(wú)錫六月智能軟件有限公司參與PRPC歐美銀行軟件開(kāi)發(fā)。我覺(jué)得那段時(shí)間應(yīng)該是最難的,不是很累,但是心情上總是在搖擺,定不下來(lái), 跟現(xiàn)在做項(xiàng)目遇到問(wèn)題思考完全是兩回事。
您是怎么開(kāi)始開(kāi)始關(guān)注PHP的?開(kāi)發(fā)的***個(gè)PHP項(xiàng)目是什么?您最滿意意的PHP項(xiàng)目是什么?
最早的時(shí)候,其實(shí)是在一家公司做網(wǎng)頁(yè)設(shè)計(jì)師,公司那時(shí)候剛好缺PHP程序員,自己之前也是做Java開(kāi) 發(fā)的,就轉(zhuǎn)到PHP,開(kāi)始做了PHPer,也是從那個(gè)時(shí)候開(kāi)始深入php。***個(gè)PHP項(xiàng)目是《全球品牌搜索網(wǎng)》,不過(guò)這個(gè)項(xiàng)目不是***上線的,后來(lái)參與 的一個(gè)“磐谷汽配輪轂網(wǎng)” 比我剛才說(shuō)的那個(gè)項(xiàng)目提前上線。最滿意的是現(xiàn)在的項(xiàng)目“有卡優(yōu)惠”,這個(gè)項(xiàng)目主要是和TTG進(jìn)行合作的刷銀聯(lián)卡的進(jìn)行優(yōu)惠的項(xiàng)目。畢竟自己的在技術(shù)方面做 得越來(lái)越成熟,想法也比幾年前的完善多了。
PHP、Python和Ruby這三種開(kāi)發(fā)語(yǔ)言幾乎是同時(shí)出現(xiàn)的,都是十分有特點(diǎn)、優(yōu)秀的開(kāi)源語(yǔ)言。這個(gè)月TIOBE編程語(yǔ)言社區(qū)公布的語(yǔ)言排行幫上,PHP勢(shì)頭迅猛,上升到了第五,很明顯PHP的發(fā)展勢(shì)頭比其他兩種語(yǔ)言更好,您認(rèn)為這和PHP在網(wǎng)站開(kāi)發(fā)的立足點(diǎn)與PHP語(yǔ)言本身的特點(diǎn)有什么關(guān)系?還是有什么其他的因素影響?
以上3種語(yǔ)言都是相當(dāng)優(yōu)秀的腳本語(yǔ)言,現(xiàn)在越來(lái)越多的新公司或者新項(xiàng)目使用PHP,這使得PHP相關(guān)社區(qū)越來(lái)越活躍,而這又反過(guò)來(lái)影響到很多項(xiàng)目或公司的選擇,形成一個(gè)良性的循環(huán)。就我目前了解到的情況,PHP是國(guó)內(nèi)大部分web項(xiàng)目的***,而且有很多公司從其它語(yǔ)言(如ASP,JAVA)轉(zhuǎn)到了PHP。合適的就是***的,PHP的快速,開(kāi)發(fā)成本低,周期短,后期維護(hù)費(fèi)用低,開(kāi)源產(chǎn)品豐富(這點(diǎn)可以影響到很多項(xiàng)目的決策),這些都是另外兩種語(yǔ)言無(wú)法比擬的。另外,在很多大項(xiàng)目中,似乎正在走向與PHP不同的發(fā)展方向,讓我們拭目以待。
您對(duì)于PHP開(kāi)發(fā)工具的現(xiàn)狀滿意么?您目前工作的團(tuán)隊(duì)使用的是什么開(kāi)發(fā)工具?
個(gè) 人認(rèn)為,一個(gè)優(yōu)秀的框架能在很大程度上提高工作效率,尤其是對(duì)大中型項(xiàng)目。當(dāng)然如果對(duì)項(xiàng)目有足夠的把控能力,框架也并非是必須的,畢竟PHP的框架跟 ROR的情況有所不同,多而混亂,而學(xué)習(xí)一個(gè)框架是需要時(shí)間的。像你的問(wèn)題中提到的,很多老的PHP程序員對(duì)框架不屑一顧,認(rèn)為自己對(duì)項(xiàng)目有足夠的把控能 力,不需要框架這么累贅的東西,然而從長(zhǎng)遠(yuǎn)來(lái)看,一個(gè)優(yōu)秀的框架可以延長(zhǎng)一個(gè)項(xiàng)目的壽命,降低維護(hù)和二次開(kāi)發(fā)的成本。在一個(gè)項(xiàng)目中,沒(méi)有一個(gè)優(yōu)秀的框架是 很難想象的。目前主流的PHP框架有很多的,但是沒(méi)有哪個(gè)框架能完全適合一個(gè)大型的項(xiàng)目。目前的開(kāi)發(fā)團(tuán)隊(duì)正在使用的是ZEND框架,極大地提高了團(tuán)隊(duì)的工作效率。
有關(guān)PHP網(wǎng)站漏洞的消息是很多的。您認(rèn)為這其中的原因和PHP語(yǔ)言本身的特點(diǎn)有關(guān)么(相對(duì)于如PHP網(wǎng)站數(shù)量、PHP代碼編寫習(xí)慣等其他因素)?PHP的安全有改善的空間么?
剛 開(kāi)始做開(kāi)發(fā)的時(shí)候,自己其實(shí)是不怎么喜歡使用開(kāi)源框架,感覺(jué)到自己寫的類庫(kù)文件可以到處調(diào)用,挺方便的使用,其實(shí)是因?yàn)樽约耗菚r(shí)候太低級(jí)了。后來(lái)開(kāi)始接觸 zend、tp、yii等框架,通過(guò)學(xué)習(xí)簡(jiǎn)單的使用,發(fā)現(xiàn)可以節(jié)省時(shí)間、靈活性較強(qiáng)。對(duì)程序員來(lái)說(shuō)可以有清晰明確的分類歸類,減少代碼量。目前網(wǎng)站安全一 直是一個(gè)煩瑣的問(wèn)題,它主要是服務(wù)器安全、網(wǎng)絡(luò)安全以 及代碼的質(zhì)量,我不想說(shuō)PHP這門語(yǔ)言不安全。目前PHP有很多優(yōu)秀的開(kāi)源產(chǎn)品,例如ZEND、TP、YII等,即使在開(kāi)源的情況下,這些產(chǎn)品也保證了足 夠的安全性。PHP的門檻很低,初學(xué)者一兩月的時(shí)間就可以入門,而這些“快速入門”的程序員,容易忽略代碼質(zhì)量安全問(wèn)題。安全問(wèn)題的改善,極大部分取決于 越來(lái)越多的PHP程序員對(duì)這個(gè)問(wèn)題的重視程度,從而加強(qiáng)代碼的質(zhì)量。
***,談?wù)勀鷮?duì)PHP未來(lái)發(fā)展的看法(好的地方、還需要改進(jìn)的)。
不 論對(duì)什么樣的語(yǔ)言,面向?qū)ο蟾嗟氖且环N思考問(wèn)題的方法,沒(méi)有必要為了面向?qū)ο蠖ッ嫦驅(qū)ο?。PHP最初的面向?qū)ο?,可以?jiǎn)單地看作是函數(shù)的升級(jí),曾經(jīng)被 很多其它語(yǔ)言的開(kāi)發(fā)者取笑,但PHP5的面向?qū)ο笠呀?jīng)足以滿足大部分WEB項(xiàng)目了。一門語(yǔ)言要想生存下去,就得去適應(yīng)技術(shù)發(fā)展的潮流,并不斷做出調(diào)整,在 這方面,PHP的團(tuán)隊(duì)充滿了活力,相信未來(lái)的發(fā)展空間是相當(dāng)大的。
最近幾年主要參與開(kāi)發(fā)PHP面向?qū)ο蟮腤eb項(xiàng)目。PHP語(yǔ)言目前的框架主要是采用與JAVA類似的MVC開(kāi)發(fā)模式,含有豐富的開(kāi)發(fā)庫(kù),支持多數(shù)據(jù)庫(kù)驅(qū)動(dòng)。未來(lái)的PHP開(kāi)發(fā)框架同時(shí)也需要具備幾個(gè)特點(diǎn):
采用更多PHP的新特性,例如命名空間、匿名函數(shù);
擁有更豐富可擴(kuò)展的開(kāi)發(fā)包;
文檔豐富;
社區(qū)活躍。每個(gè)PHP開(kāi)發(fā)人員在選擇的時(shí)候都應(yīng)該根據(jù)自己情況選擇最合適自己的開(kāi)發(fā)框架,從而方便快速地進(jìn)行項(xiàng)目開(kāi)發(fā),提高工作效率,節(jié)省時(shí)間、減少成本核算。