1. 程式人生 > >web後端開發語言Java和PHP的比較

web後端開發語言Java和PHP的比較

理念上的不同導致了Java和PHP在Web應用開發上顯示了不同的結果,儘管Java的數學計算和資料庫訪問都有優勢,架構也相當完美,但是PHP卻可以簡單輕鬆地支援高強度Web訪問,能夠快速開發應用,支援PHP的虛擬主機多如牛毛,使得用PHP開發一個網站比用Java開發一個網站要快得多,容易的多。Java所擁有的優點只適合傳統的以軟體專案為核心的開發模式,而PHP更適合於以客戶為核心的SaaS的開發模式,因此,PHP目前在Web網站開發的優勢完全是因為Web網站開發的特殊性而導致的,並非程式語言特性所決定。

Java語言相比PHP有明顯的優勢,Java使用的是面向物件的系統設計方法,而PHP還是採用面向過程的開發方法。PHP只能實現簡單的分散式兩層或三層的架構,而JAVA可以實現多層架構。資料庫層(持久化層)、應用(業務)邏輯層、表示邏輯層彼此分開,而且現在不同的層都已經有一些成熟的開發框架的支援。例如Struts就是利用Java的web開發技術實現了MVC的設計模式,而在業務邏輯層也有Spring框架,資料庫持久化層有Hibernate等框架。這些框架可以方便開發者高效、合理、科學得架構多層的商業應用。從數學運算和資料庫訪問速度來講,Java的效能也優於PHP.實際上,對於跨平臺的大型的企業應用系統來講,Java幾乎已經成為唯一的選擇(微軟.NET不支援跨平臺),但是在於Web網站應用開發來講,Java卻面臨著被PHP邊緣化的危險,幾乎所有的虛擬主機都支援PHP+MySQL,而支援Java的卻少之又少,在資源上,網上有不計其數的PHP資源,很多著名的大型網站(例如Facebook、Mediawiki等)都是基於PHP的,而成功的Java網站卻寥寥無幾,我不禁反思這是什麼原因導致的?

因此,PHP在Web網站開發語言的戰爭中已經慢慢將Java拋在了後面,Java要想在Web網站開發上奮起直追,的確應該多聽聽Andi Gutmans的意見,徹底改變一下思路才行,否則兩者的差距只能是越來越遠。

另外,雖然在國際上LAMP(Linux+Apache+Mysql+Php)架構已經佔領了統治地位

,但是在中國國內還有一個怪胎,就是基於微軟的Windows Server+IIS+SqlServer+ASP/ASP.NET的架構,從理論上說,微軟的這一套架構也能實現不錯的效能,只可惜Windows和SqlServer價格不菲,整個架構在效能上比起LAMP不僅沒有什麼優勢,反而還有不少劣勢,因此微軟的這一套傢伙在國際市場上吃不開。而國內使用微軟盜版則可以忽略成本,而ASP的易學易用性不遜於PHP,甚至連IT外行都能夠使用,因此在國內也有不小的市場。但是隨著中國在保護智慧財產權方面的日趨完善,免費的LAMP依舊是未來的趨勢。

轉載自:https://blog.csdn.net/haifengid/article/details/52647828