1、系統的技術架構比較
分層是將系統進行有效組織的方式,分而治之的思想是計算機領域中非常重要的思想。在好的分層思想引導下,便能實現“高內聚、低耦合”,也能將具體的問題 割裂開來,易於控制、易於延展,更易於分配資源。PHP只能實現簡單的分布式兩層或三層的架構,而JAVA在這方面就十分強大,可以實現多層的網絡架構。運用MVC的設計模式,可使電子商務軟件具有更加高效、合理的系統架構。技術架構的落後,使運用PHP編寫的電子商務軟件先天不足,而後天又無法補足其先天上的劣勢。使得系統在可拓展性、需求應變性上與JAVA編寫的電子商務軟件系統的差距越來越大。架構的差距,註定了PHP做的電子商務充其量是個小家碧玉,始終無法和JAVA這種大家閨秀同臺競技。
2、數據庫訪問比較
PHP可編譯成具有與許多數據庫相連接的函數。將自己編寫外圍的函數去間接存取數據庫。通過這樣的途徑當更換使用的數據庫時,可以輕松地修改編碼以適應這樣的變化。但PHP提供的數據庫接口支持彼此不統壹,比如對Oracle,MySQL,SQL2000的接口,彼此都不壹樣。由於PHP對於不同的數據庫采用不同的數據庫訪問接口,所以數據庫訪問代碼的通用性不強。
3、安全性對比
在JAVA的面前,PHP丟掉了很多的優勢。在代碼的安全性上尤為突出。PHP的開發程序在別人拿到代碼後,可以很容易的進行修改。而JAVA開發的程序由於無法看到完整的源代碼,只能看到壹些編譯好的類文件.class,所以安全性較高。加之系統架構的優勢,在安全性上PHP和JAVA是相去甚遠。如果非要將PHP和JAVA在安全性上做個比較的話,同壹個小偷光顧PHP那是隨便拿來隨便改,想拿什麽拿什麽,拿的高興還能大筆壹輝某某到此壹遊。而光顧JAVA的時候,便會發現警察把守,內設自動報警裝置,即便突破重重阻擾後進入居室。那值錢的東西都放在加密後的保險櫃中,只能望洋興嘆、鎩羽而歸。
4、前瞻性和拓展性
從整體來說,PHP適用於中小型系統,而JAVA適用於大型系統。PHP能夠將單壹的事件做好,但卻不適合完成集成度較高的多項並發事件。為什麽說PHP適合中小型系統而不適合做大系統呢?
首先,PHP缺乏多層結構支持。而對於大型的系統負荷站點,只能采用分布計算。將數據庫、應用邏輯層和表示邏輯層彼此分開,並將同層的根據流量分開,組成二維數組。而PHP恰恰缺乏這種支持。
其次,PHP提供的數據庫接口不統壹,要將多個不同的數據庫數據統壹需要花費很大的力氣。而JAVA則沒有這種缺陷,可通過SUN JAVA的JAVA Class和EJB獲得規模支持,通過EJB/CORBA以及眾多廠商的Application Server獲得結構支持。如ProBIZ的Merchant one電子商務軟件產品系列。
如果將PHP比作將才,具備獨擋壹方的能力。那麽JAVA便是帥才,具有較好的前瞻性和拓展性,整體布局和協同能力強。能夠指揮千軍萬馬,最後逐鹿中原。