歡迎您光臨本站 註冊首頁

PHP的未來 - Zeev Suraski訪談錄

←手機掃碼閱讀     火星人 @ 2014-03-29 , reply:0

  問:2007年九月發布的Eclipse PHP開發工具(PDT),誰在背後和做了那些工作?

  Zeev: PDT 是Eclipse的項目,但Zend起了主導的作用。

  問:這和Zend Studio的關係如何?

  Zeev: 我們現在同時在干三件事。第一,Zend Studio,我們正在售賣此產品,第二,PDT,面向廣大的開源社區。第三,擴展PDT的功能,打造成商業版。

  問:這就是說,PDT不會代替Zend Studio?

  Zeev:目前不會。如果發現Eclipse上所有的變化,我們會滿擔心的。

  問: Eclipse有什麼優點?

  Zeev:一個主要的優點是有很多介面,該有的幾乎都有了。比如AJAX的和Javascrīpt的。用戶還可自我開發。另一個優點是容易貫徹標準化。

  問:Zend產品的商業版與免費版有何區別?

  Zeev:(商業版中)該有的都有,如CVS,Subversion, XML和支持Java,容易安裝。還有PDT不具備的一些商業介面。整合了其他的Zend 產品支持Web services 和特別的資料庫。

  問:Zend 要和Microsoft 合作在Windows里使用PHP。合作內容是什麼?有那些共同開發部分?Microsoft為什麼要這麼干?

  Zeev:夥伴關係建立快一年了。Microsoft打定了主意要和其他操作系統,尤其是Linux,爭奪作為PHP的目標平台。到目前為止,99%的用戶建立在Linux 或 Solaris平台上,因為Windows對PHP來說不好用,Microsoft想改變這點。

  我們開發Zend的時候也知道大多數的應用都是用在Windows上的。很多基於Windows系統連接互聯網的用戶,為了維持競爭力,也需要解決方案,這類用戶越多,需求越大。

  我們和Microsoft合作的共同目標是:讓PHP在Windows下運行得最好。

  問:這是長期的項目嗎?

  Zeev:對,大部分已完成了。我頂多能說PHP在Windows上運行得比Linux慢。但我們還會繼續改進。

  問: PHP現在怎樣?PHP4的支持到年底就結束了,但還有很多人擔心從PHP4升級到PHP5會出錯?

  Zeev:PHP 5 還沒出,我就知道會有問題。這個問題不是PHP本身的問題。之前的版本已經很好了。讓我們看看PHP的發展過程。

  到了PHP4,用戶群已經非常龐大了。

  從PHP4升級到PHP5,問題在於其認受的程度。很多人認為從PHP4升級到PHP5是困難的。在你看來,PHP4足夠用了。通常一項技術很好用時就不會去發展了,不但軟體如此,其他事情也一樣。比如對我來說,一個用了三年的手機仍然用的很好,即便慢點苯拙點,我也沒必要去買個新的花俏的手機,因為我的目的就是通話。正在用PHP4的人們,抱著同樣的心態。很多人也擔心從PHP4升級到PHP5會出現匹配性問題。這通常不會出問題,但問題就在」通常「,(而不是永遠)。轉換后還要做大量徹底的測試。這些理由合在一起 -- PHP4很好用了,擔心匹配性問題了,加上大量測試的需要了,足以阻攔PHP5的貫徹。

  所以,對PHP4的支持不會在年底結束,而是延長到明年八月。(對PHP4)安全性的更新還會繼續。即使現在,很多功能對PHP4來說都不是新的。PHP5中的新特徵,已經存在好一會了。

  問:為什麼我們現在要升級到PHP5,而不是等到PHP6?

  Zeev:問得好。首先我們目前正處在發展中期:一面要支持PHP4的運作,另一面PHP6還沒來。第二--我要很小心得表達下面的句子-- 從PHP5到PHP6之間的匹配性的壕溝是很大的。因為在Unicode編碼上和語言中基本元素里的變化很可能會出現不匹配!我們在PHP6中所做的與其說是」改進「,還不如說是」革命「。把不匹配性盡量降低是一項艱難的任務。也許我們會提供一些自動移植工具。

  從PHP4跳到PHP6 比從PHP4升到PHP5然後升到PHP6痛苦多了!但問題出來了,我們就要解決它。我們正認真小心地進行處理,並從PHP5的推廣中吸取經驗教訓,我們還沒做最後決定,但我們會儘力讓從5到6的過渡儘可能平穩。目前來講,等PHP6出來再升級毫無意義。PHP6至少要等一年後才有可能出來。

  問:我對PHP5發布時,對釋放存在的OpCode-Caches方面沒有明確的說法印象深刻。老是談到這個問題是否它沒解決好?

  Zeev:可能吧。剛推出時很多公司並沒有用它,(所以並沒重視)。但自從2004年PHP5出來后,很多公司開始使用,不管是開源的或商業的(OpCode-Caches產品),問題可能就出來了。OpCode-Caches在系統搭建時是很重要的。如果沒用它,你也許要多用兩台伺服器。

  問:在PHP6里會注重這點嗎?還會有那些變化?

  Zeev:在PHP6里,APC (譯者註:Alternative PHP Cache) 會是PHP的一部分。APC也會成為Zend的一個商業產品。


  第二部分

  問:你剛剛提到Unicode的問題,它PHP6里將有哪些變化?我們會有哪些期待?

  Zeev :老老實實地跟你講:我還沒空去想它。不是因為我們不想貫徹它,問題在於現在PHP6項目剛提出來,這是否值得我們現在就討論。

  舉個簡單例子 」Name Spaces「,過去三、四年來,應各方要求,我們原想在PHP5中貫徹,但缺乏時間。現在我們把原來的決策順序倒過來,把」Name Spaces「(的貫徹)放到後面。我們對PHP-Namespaces的工作已經做得很好了,原打算整合到PHP6中,但現在考慮把它先放在 PHP5.3里。照目前情況來看,(PHP5.3)大概明年第一季度就可推出,但可能還會改變。到時」Namespaces「很可能也會隨之推出,我們可不想讓這麼重要的功能幹等著PHP6,況且我們自己也不肯定PHP6到底什麼時候能出來。

  等這些重要事項落實好后,我們才有時間來處理Unicode 和一些有關PHP配置的改變,如全局變數(Registered Globals)等等。到PHP6推出時,很多功能可能已經在PHP3.3 和PHP3.4里實現了,我們不想把什麼都等著放在PHP6里。

  問:幾個月前,Zend Framework 1.0 推出,為什麼要把PHP庫用在不同的平台上,而不是放在 PEAR項目里?

  Zeev :有很多理由決定了我們要開發 Zend Framework。兩年前,2005年,Framework的項目開始時,我和Andi (Zend 共創人。譯者注)本有幾種框架可選,但我們還是決定開發新的獨立的框架。

  一個理由是:我們想儘可能地把PHP5的優勢發揮出來。我們不想讓PHP5去遷就一個框架,而是要一個能充分發揮PHP5支持對象和極其出色地支持web的特性的框架。之前的框架是不可能做到這點的。用PHP5來開發也增加了框架的擴展性,Zend Framework的可擴展性是其一個關鍵要素。如果基本的貫徹不是100%的用PHP5來做,PHP5的對象模型沒有持續使用,那麼(這種框架的)精巧性和擴展性就有很多問題了。

  另外一個重要的理由是有關產權方面的:因為Zend Framework是和IBM的合作項目,IBM和相關的公司相當關注用PHP做出來的框架,它的產權(必須)是非常清晰的,賣方必須明確這是原創的,而不是在別人的代碼上改進的。

  這是兩個主要的理由,其他的微不足道。我們特別想要強調一下品質。品質也許是非常主觀的(看法),但也包含了一些客觀的方面,如」覆蓋面「。我們想從零開始,每個組件(component)在放進框架前,都要做完全,徹底的安全測試。我們希望,當然也會通過很多心理戰,讓用戶知道,這個產品是經過嚴格測試的。

  問:Zend Framework 還剩下多少活要干?

  Zeev :很多。現在我們分開兩組:Andi Gutmans 帶一組人,做主體性的工作。(另外)5-6個人全職在Zend Framework 項目上工作。

  問:Zend Framework 現在做到什麼程度了?

  Zeev:我想已經到了一個很好的地步。自兩年前推出以來,包括1.0的版本,如果沒記錯,已有近兩百萬下載量。我們對框架的發展有一個清晰的方向。以後新版的框架的推出將按照預定的時間表,而不是由增加的功能進度來定。我們現在正在做1.01版,和1.0比相差不大。下一步,我們將把框架集成到其他的 Zend產品中。

  問:Stefan Esser 數月前搞了一場PHP安全的辯論會。我的印象是,PHP小組在安全補丁問題的溝通上很暢通,但骨子裡變化不大。至今有了那些變化了?

  Zeev :我個人認同很多Stefan不認同的公共的觀點。不管怎麼說這些辯論,就算有些看法我不同意,也是為了PHP的發展。但我不認同Stefan認為這是一個

  (PHP小組)精心設計的陰謀,他沒明說,但我感覺如此。(我們)並沒有在處理PHP網路上的安全問題時故意犯錯,並非有意拖延。我們知道還有很多東西要改,但還沒去做。但你要記得(我們的工作次序):一方面當安全問題影響很大,影響到整個體系。另一方面,對安全問題的修補有利於PHP體系的發展。這就是我們做安全補丁的依據。我想現在的反應時間應該比以前快了。

[火星人 ] PHP的未來 - Zeev Suraski訪談錄已經有450次圍觀

http://coctec.com/docs/linux/show-post-201323.html