PHP適合于快速開發(fā),中小型應(yīng)用系統(tǒng),開發(fā)成本低,能夠?qū)ψ儎?dòng)的需求作出快速的反應(yīng)。而Java適合于開發(fā)大型的應(yīng)用系統(tǒng),應(yīng)用的前景比較廣闊,系統(tǒng)易維護(hù)、可復(fù)用性較好。其實(shí),PHP+MYSQL不值錢不僅僅局限于oa軟件,而是整體上PHP+MYSQL開發(fā)的軟件都不如java開發(fā)的軟件值錢。為什么PHP+MYSQL的OA為什么不值錢呢?PHP可編譯成具有與許多數(shù)據(jù)庫(kù)相連接的函數(shù)。以PHP最經(jīng)典的組合PHP+MySQL+為例,由于所有軟件都
JAVA和PHP的區(qū)別是什么呢?
所有PHP都適合快速開發(fā),中小型應(yīng)用系統(tǒng),開發(fā)成本低,對(duì)需求變化響應(yīng)快。Java適合大型應(yīng)用系統(tǒng)的開發(fā),應(yīng)用前景廣闊,易于維護(hù),可重用性好。通過對(duì)兩種語(yǔ)言編寫的oa系統(tǒng)的比較,對(duì)兩種語(yǔ)言的差異進(jìn)行了全面的比較。現(xiàn)在市面上的OA基本可以分為兩大陣營(yíng),分別是php陣營(yíng)和java陣營(yíng)。但是對(duì)于接觸oa時(shí)間短的用戶來(lái)說(shuō),看到的往往只是外表,只有明顯的價(jià)格差異,很難看出兩者的實(shí)際區(qū)別。其實(shí),沒有價(jià)值的PHP+不僅限于oa軟件,PHP+MYSQL開發(fā)的軟件還不如java開發(fā)的軟件有價(jià)值。PHP+MYSQL的OA為什么不值錢?我們首先要了解php和java的區(qū)別。1.系統(tǒng)的分層技術(shù)架構(gòu)是有效組織系統(tǒng)的方式,分而治之的思想是計(jì)算機(jī)領(lǐng)域非常重要的思想。在良好的分層思想指導(dǎo)下,可以實(shí)現(xiàn)“高內(nèi)聚低耦合”,將具體問題分離出來(lái),易于控制,易于擴(kuò)展,更易于分配資源。PHP只能實(shí)現(xiàn)簡(jiǎn)單的分布式兩層或者三層架構(gòu),而JAVA在這方面非常強(qiáng)大,可以實(shí)現(xiàn)多層網(wǎng)絡(luò)架構(gòu)。使用MVC設(shè)計(jì)模式可以使oa系統(tǒng)有一個(gè)更高效、更合理的系統(tǒng)架構(gòu)。技術(shù)的落后使得php編寫的oa軟件系統(tǒng)先天不足,后天無(wú)法彌補(bǔ)先天劣勢(shì)。該系統(tǒng)與JAVA編寫的oa軟件系統(tǒng)在擴(kuò)展性和適應(yīng)性上的差距越來(lái)越大。架構(gòu)上的差距注定了php做出來(lái)的oa頂多是個(gè)小家碧玉,永遠(yuǎn)比不過java這樣的好人家。2.數(shù)據(jù)庫(kù)訪問比較PHP可以編譯成與很多數(shù)據(jù)庫(kù)連接的函數(shù)。我會(huì)自己寫外圍函數(shù)來(lái)間接訪問數(shù)據(jù)庫(kù)。這樣,當(dāng)使用的數(shù)據(jù)庫(kù)發(fā)生變化時(shí),可以很容易地修改代碼以適應(yīng)這種變化。但是PHP提供的數(shù)據(jù)庫(kù)接口支持各不相同,比如對(duì)MySQL的接口就各不相同。由于PHP對(duì)不同的數(shù)據(jù)庫(kù)使用不同的數(shù)據(jù)庫(kù)訪問接口,所以數(shù)據(jù)庫(kù)訪問代碼的通用性不強(qiáng)。Java通過JDBC訪問數(shù)據(jù)庫(kù),不同數(shù)據(jù)庫(kù)廠商提供的數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序方便訪問數(shù)據(jù)庫(kù),訪問數(shù)據(jù)庫(kù)的接口也比較統(tǒng)一。如果開發(fā)的web應(yīng)用也是從MYSQL數(shù)據(jù)改為data,PHP需要做大量的修改工作,而且繁瑣。然而,JAVA開發(fā)只需做一些改動(dòng)就可以實(shí)現(xiàn)。數(shù)據(jù)庫(kù)訪問的不同意味著php開發(fā)的oa和java開發(fā)的oa是車廂和火車的差距。前者只能并駕齊驅(qū)且額度有限,后者是工業(yè)化的結(jié)晶,既能包容一切又能穩(wěn)步提高速度。3.安全性對(duì)比在既開源又跨平臺(tái)的java面前,php失去了很多優(yōu)勢(shì)。尤其是在代碼的安全性方面。php的開發(fā)程序在別人拿到代碼后可以很容易的修改。而java開發(fā)的程序看不到完整的源代碼,只能看到一些編譯好的類文件,所以安全性高。再加上系統(tǒng)架構(gòu)的優(yōu)勢(shì),php和java在安全性上相差甚遠(yuǎn)。如果我們必須在安全性方面比較php和java,那么光顧php的同一個(gè)小偷只會(huì)改變它,拿走他想要的任何東西,如果他高興,他可以對(duì)一輝進(jìn)行一次大訪問。當(dāng)你游覽java的時(shí)候,你會(huì)發(fā)現(xiàn)有警察在守衛(wèi)著它,里面有自動(dòng)報(bào)警裝置,即使你沖破重重障礙進(jìn)入房間。值錢的東西都放在加密的保險(xiǎn)柜里,只能失望而歸。4.向前看,不斷擴(kuò)大??偟膩?lái)說(shuō),php適合中小型系統(tǒng),java適合大型系統(tǒng)。Php可以做好單個(gè)事件,但不適合完成多個(gè)高集成度的并發(fā)事件。為什么php適合中小型系統(tǒng)而不適合大型系統(tǒng)?首先,php缺乏多層結(jié)構(gòu)支持。對(duì)于大型系統(tǒng)負(fù)荷站,只能使用分布式計(jì)算。數(shù)據(jù)庫(kù)、應(yīng)用程序邏輯層和表現(xiàn)邏輯層相互分離