{eval=Array;=+count(Array);}
如果說實現(xiàn),那基本上都能實現(xiàn),但術(shù)業(yè)有專攻,PHP就適合做做簡單的網(wǎng)頁型業(yè)務(wù)系統(tǒng),你非要讓它去做其他的事情,成本代價太高。
寫后端理論上不存在一個能實現(xiàn)另一個不能實現(xiàn)的問題。實際上因為生態(tài)的不同,要實現(xiàn)同樣的東西,兩者要花的精力卻不一樣,比如微服務(wù),java有完整成熟的解決方案,而php卻沒有,自己去實現(xiàn)那花的精力就很多了
拋開一些前置條件,這樣籠統(tǒng)地對比意義不大,存在即有理。
一般的軟件系統(tǒng),大部分情況下二者能互換,但技術(shù)選型是要綜合多種因素考慮的。
1、在公司角度:
要考慮具體業(yè)務(wù)場景、成本、人員等諸多因素。
2、開發(fā)者角度:
一是考慮興趣,二是公司要求。如果自己開發(fā)產(chǎn)品或?qū)W著玩,就看自己興趣,如果為了工作就多看公司招聘要求。
其實編程語言入門并不難,堅持就行,但精通卻很難,更需要多動腦。
要明白的一件事:入門可能只需要一種語言,到后期想自己進(jìn)步的時候必定會接觸到其他語言。
1、專注的領(lǐng)域不同
java是純面向?qū)ο箝_發(fā),功能強大,分支眾多,沒有java不能做的軟件。C/S也好B/S也好。從功能上講,沒有語言可以和java相比。但其優(yōu)勢也是其劣勢,具體參考后面的瓶頸解釋。
PHP屬于后起之秀,吸收了java和c以及perl等語言優(yōu)點,專注互聯(lián)網(wǎng)領(lǐng)域。在WEB領(lǐng)域中PHP擁有得天獨厚的優(yōu)勢,WEB領(lǐng)域沒有語言可以和PHP相比。
2、數(shù)據(jù)庫訪問上不同
Java通過JDBC來訪問數(shù)據(jù)庫,通過不同的數(shù)據(jù)庫廠商提供的數(shù)據(jù)庫驅(qū)動方便地訪問數(shù)據(jù)庫。訪問數(shù)據(jù)庫的接口比較統(tǒng)一。
PHP對于不同的數(shù)據(jù)庫采用不同的數(shù)據(jù)庫訪問接口,所以數(shù)據(jù)庫訪問代碼的通用性不強。例如:用Java開發(fā)的Web應(yīng)用從MySQL數(shù)據(jù)庫轉(zhuǎn)到Oracle數(shù)據(jù)庫只需要做很少的修改。而PHP則需要做大量的修改工作。
3、系統(tǒng)技術(shù)架構(gòu)上不同
Java語言有著完備的MVC框架,包括視圖層、業(yè)務(wù)控制層和持久層,在Spring框架中,我們可以通過IOC和AOP降低編碼過程中的高耦合,也就是說Java中的這些框架可以讓開發(fā)者有更廣闊的空間去設(shè)計科學(xué)合理的架構(gòu),也體現(xiàn)著Java多層架構(gòu)的特點。
相比Java而言,PHP留給開發(fā)者的空間并不多,但PHP近些年也在改進(jìn),迎合電子商務(wù)的需要,引入MVC設(shè)計模式,但成熟性和穩(wěn)定性上與Java還是有著不小的差距。不得不提的是PHP可兼容MySQL開發(fā),這使得在考慮成本因素的前提下,PHP變得小而精,收到了一些中小型網(wǎng)站的青睞。
4、安全性上不同
在同是開源和跨平臺的java面前,php丟掉了很多的優(yōu)勢,在代碼的安全性上尤為突出。
php的開發(fā)程序在別人拿到代碼后,可以很容易的進(jìn)行修改。而java開發(fā)的程序由于無法看到完整的源代碼,只能看到一些編譯好的類文件,所以安全性較高。
5、開發(fā)成本上的不同
PHP最經(jīng)典的組合就是:PHP + MySQL + Apache。非常適合開發(fā)中小型的Web應(yīng)用,開發(fā)的速度比較快。而且所有的軟件都是開源免費的,可以減少投入。
Java的Web應(yīng)用服務(wù)器有免費Tomcat、JBoss等,如果需要更好的商業(yè)化的服務(wù)有:Web Sphere和 Web logic。
6、學(xué)習(xí)的難易程度不同
php是解釋執(zhí)行的服務(wù)器腳本語言,首先php有簡單容易上手的特點。語法和c語言比較象,所以學(xué)過c語言的程序員可以很快的熟悉php的開發(fā)。
java的學(xué)習(xí)需要先學(xué)好java的語法和熟悉一些核心的類庫,懂得面向?qū)ο蟮某绦蛟O(shè)計方法。所以java不如php好學(xué)。
[耶][耶][愛慕][愛慕]
理論上是可以的,
只是不擅長,實現(xiàn)代價較大,
甚至你可以用python也可以做到,
極端一點,C或者匯編都可以,只是重復(fù)造輪子,效率太低!
誰把我js拉進(jìn)來的,不嫌事大是啵!?。?/p>
我能說誰好誰不好嗎,我就弱弱的問一句,這里誰前后都好使?
哎呀媽呀,我媽叫我回去吃飯了,我先走了,各位爺回見!
這,技術(shù)實現(xiàn)不一樣,PHP是通過解釋器運行,主要用于web前后端服務(wù),java運行在jvm里面,用途相對廣泛一些,除了web服務(wù),也可以視作獨立程序運行,一些游戲就是java開發(fā)的,例如minecraft,通過jvm可以跨平臺。
10
回答10
回答7
回答8
回答0
回答1
回答0
回答0
回答10
回答0
回答