相對于java由簡入繁的演變趨勢,php忠于簡單易學原味的堅持受到廣大開發(fā)者的歡迎,近年來聲勢大漲,而簡單就是力量,這句話套用于近日php異軍突起,再適合也不過了。老實說,原本覺得它不會太厲害,看到它最近的成長和茁壯,直攻java陣營輸于經營之處,讓人對它刮目相看。
netscape前ceo marc andressen在zend/php大會上預言,簡單易學的描述語言php將會比java被更多人用于web應用的開發(fā)上;再引用cnet臺灣報導的數據,全球大約有2200萬個網站使用php,而且數量還在穩(wěn)定增加中。
為什么php會如此受歡迎呢?我想簡單好用是最大原因。如果網站只是提供使用者搜尋資訊的入口,網際網路上有許多現成、免費的、容易拿到,且已經做好的網站軟體,如行事歷、網站管理、新聞、報名系統(tǒng)、電子報、天氣預報等免費的應用模組供下載安裝使用,如此好康的事情,何樂而不為?而且只要買一本書,裝一裝,簡單的設定就有討論區(qū),不用寫任何程式,這對沒有程式經驗的人來說是好的進入點,也符合中小企業(yè)低成本建置網站的需求。作為java人士,php的竄起給了我三個啟示:
web 開發(fā):php夾縫中求生存之道
這些網路應用軟體java做不到嗎?php夾在jsp(javaserver page )和asp(active server page )中間,說實在的,應該一點生存的機會都沒有,因為他們的難易度、觀念和架構、程式語法這三樣差異不大;如果從彈性的角度來看,asp可以去呼叫com+元件,jsp是呼叫java beans元件,從開發(fā)延展性和系統(tǒng)的擴充性來說,都比php好太多,軟體應用空間也相對更廣闊。
當然,這些語言因為各有特長,都各自有發(fā)展,而php在眾多網站開發(fā)工具市場中沒有變得比較差,反而變得比較大,軟體是免費雖然是主因之一,但我認為更重要的是,php社群很專心地開發(fā)動態(tài)網頁技術,而且這個點作對了,而如果要學asp就還要再學vb,學元件開發(fā),java領域除了jsp外,還可以作severlet,作severlet就會想說把ejb結合在一起,所以體系會越來越復雜,越復雜就筑起更高的學習門檻,如此一來,學習意愿低,人才少,成本相對較高,直接影響企業(yè)采用意愿。
現在的軟體世界不只是應用之爭,也是平臺的拉鋸戰(zhàn);過去開發(fā)人員會比較哪種程式語言比較棒,組合語言、cobol、pl1、ada(人工智慧)、lsper、c等語言陸續(xù)問世,到最后只剩下c語言能留下來,連pscal都需要有delphi撐下來才能存活;如果要問說受歡迎的程式語言要具備什么特色,這些特色還真難歸納,例如開發(fā)彈性、功能強大、限制少、容易開發(fā)、使用性高等,每個語言先天都有這些特色,如果這些條件是程式語言存亡的關鍵因素,我想上述語言應該都不會結束,但隨著技術演進和環(huán)境的改變,不適用或不符開發(fā)者需求的語言將逐漸被淘汰。
符合中小企業(yè)需求:免費、簡單易學
然而,在眾聲喧嘩的技術空間中,唯一的相同點是大家皆支持并積極投入網際網路的發(fā)展,而php社群專注地開發(fā)網路主流應用,并且將這些模版免費讓使用者下載,這些應用模版用asp或jsp開發(fā),絕對都作得出來,但因為沒有人作,所以少了這一塊;asp或jsp作出來的應用軟體都要賣錢,既然是商業(yè)行為,使用者寧愿選不花錢、好用、又有原始碼可修改的軟體,php再結合其他開放原始碼軟體如apache、mysql和linux,整個族群就會越來越壯大。
我相信php會越做越好,但它主攻的部分-動態(tài)網頁技術,如果被jsp或asp趕上,它的前途就會受到限制,畢竟php還是沒辦法處理后端的大量運算機制,其效率和嚴謹度都會比較受挑戰(zhàn);大型運算處理工作一定要java beans來計算,如果是.net平臺就用.net componet來計算。
相反的狀況,如果用jsp或asp來開發(fā)網站應用軟體,能不能追上php的表現?我想只要1~2年內就可以追上,這些軟體開發(fā)完成后會不會是免費的,這就是困難點。目前市場上看到的jsp或asp應用模組多半需要付費使用,而asp和windows server捆綁,還搭配網頁伺服器iis和資料庫sql server,這一買下來還是要數十萬,對中小企業(yè)來說是龐大的負擔。
java前端網路應用仍須努力
java延伸出來的系統(tǒng)架構從java 2 ee、java 2 se到java 2 me,資訊的力量從企業(yè)后端推向桌面、每個手持裝置,甚至到每一張晶片卡,用途非常廣泛;網頁技術只是占java技術的10%,網頁技術則是php的全部,php開發(fā)者就全心全力發(fā)展相關應用,所以能夠做出最好的網頁呈現效果;java不是作不出這些效果,只是投入于網頁開發(fā)的資源比較少,而往更深更廣、更具延展性的未來發(fā)展,也難怪有人說java越來越難、越來越復雜。
這篇文章的目的不是要拉攏php開發(fā)者投向java陣營的懷抱,也不是鼓勵java開發(fā)者未來就往網頁技術領域耕耘,當然啦,java人如果要用自己熟悉的語言往網頁技術發(fā)展,發(fā)展到和php不相上下的地步,我們也樂見其成,因為,他補足了java原本跑在最前面、卻疏于耕耘的一塊小園地。
網站已經是企業(yè)經營發(fā)展必備的工具(must have),每個公司根據本身需求規(guī)畫網站機制,對于規(guī)格要求不嚴格、客制化需求不高或沒有it人員的企業(yè),鼓勵他們采用php應用模組,在最低花費、不用改程式的前提下,導入幾個實用的應用模組,因應公司當下需要;然而,客制化需求高、需要大量的訊息交換或交易機制的企業(yè),就一定要找java廠商了。
新聞熱點
疑難解答