好吧~分析比較一下當前互連網JavaWeb不敵php等其他平台的原因~當然先收集資訊

來源:互聯網
上載者:User

好吧~分析比較一下當前互連網JavaWeb不敵php等其他平台的原因~當然先收集資訊

php 選擇兩個典型的產品 wordpress 、 discuz! 作為研究對象。

首先是wordpress,其作為所謂的快速建站平台為何成功?個人瞭解如下:

1:介面主題模板化,就是說介面美工可以依據wordpress的擴充規範設計出各種skin。

2:功能擴充外掛程式化,與介面擴充類似,只不過是指功能上能夠通過特定規則進行擴充。就現在來看也主要是與介面有關的外掛程式。

3:易用性,尚未考證。

4:完備的文檔、教材、例子。

5:社區與使用人數。(好吧這個是廢話)

6:持久持續地更新維護。(這個也是廢話)

Java平台的開發人員首先關注啥?當然是 功能擴充外掛程式化咯,看看外掛程式機制是怎樣的。

。。。(研究中。。)。。。

wordpress的外掛程式 主要就兩類 Action 與 Filter。啥?跟servlet容器Filter /strutsmvc架構一個概念? no no 。。。其實,其功能跟原始或者說簡單。 其實更像 javaweb中的 Taglib 也就是核心標籤庫(但願我沒解釋錯)。

所謂Action 相當於在php頁面中 增加一個 hook擴充點(wordpress中叫做 action tag),並去關聯一個或多個具體的 php函數。且這個函數並不能直接返回參數到擴充點位置,一般都是在hook勾連的函數中echo 也就是jsp中的out.print()。 wordpress內部使用do_action("tagname",arg...) 在php中增加擴充點,add_action("tagname",function) 在擴充點被執行前往擴充點上註冊函數。當頁面解析執行到do_action時,其建立的tagname所註冊的函數一次被執行。而filter的與action的區別僅在於,fiter上勾連的擴充函數的傳回值
可以返回到擴充點被執行時的位置,以方便擴充點位置的控制。

這個就是被wordpress簇擁者廣泛推薦,引以為豪的外掛程式機制的核心。。。對於java平台,我們是否可以找出無數的替代實現?Taglib 是很類似,為何反而沒有變成絕大部分開發人員的首選?私以為Taglib門檻太高:需要兩種代碼文法同時工作、實現機制不夠直白、且擴充不具備嵌套能力;此外感覺實現目標奇怪:Taglib很多都是文法控制內容並沒有實際業務意義。第二點,wordpress因為固化了介面架構,其action tag是固定的一組,這讓二次開發人員有很高的參考架構和”共同語言“。而Javaweb開發時不同的項目會用不同的Taglib實現,實現形式各式各樣,導致javaweb開發員很少能夠在產品業務層級”團結在一起“。這類似於JavaBean規範,也就是所謂的潛在約定規範。Java通用開發規範一堆,業務產品及的規範幾乎沒有一般散沙,沒有事實上的標準。

  睡覺,待續。。。。。。

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.