云計算應用框架 蜂巢平臺
蜂巢平臺(OpenComb Platform)是一個基于 PHP5.3 實現的深度云計算應用框架。蜂巢采用了擴展模式,系統中的功能和特性,都由擴展提供。 因此,用戶可以通過開發和安裝擴展來部署各種類型的互聯網應用。
“擴展驅動模式”
許多軟件都提供了插件機制,允許加載由第三方開發的插件,對主程序的功能起到補充作用。 但是在插件模式中,相比起主程序,第三方插件僅僅扮演著“二等公民”的角色,只能對主程序起到有限的影響和作用。 而在蜂巢的“擴展驅動模式”下,擴展才是真正的主角,系統的所有功能都是由擴展提供的。
并且,一個擴展可以增強另一個擴展,而不只是孤立地提供功能。因此,您的所有需求,都可以由一系列擴展的組合來達成。
網頁自由布局
“視圖”就是網頁里的顯示區塊,蜂巢允許你以拖拽的方式,自由布置網頁上的視圖。 同時,蜂巢還允許你將任何一個網頁中的視圖合并到另一個網頁中顯示。
“拒絕修改源代碼”
改變系統的行為,不應該通過“篡改”源代碼來實現,那樣會導致系統或擴展無法平滑升級。 蜂巢提供了多項特別的技術(類如:OOD/AOP、模版編織、可覆蓋的類/包以及資源文件等等),來確保對擴展的增強可以避開修改源文件,無論是系統還是擴展都可以平滑升級。
面向二次開發
您過去使用的系統,即使開放源代碼,其功能的設計也是封閉的,基于這些系統進行二次開發,不但困難,而且常常會破壞系統的穩定和健壯。 能夠允許第三方開發者來擴展和增強系統的功能,是我們在設計蜂巢的系統時首要考慮的目標。蜂巢無論是源代碼還是系統設計,都是開放的。
深度云計算
蜂巢也是一個實現在軟件層次上的云計算應用框架:基于蜂巢開發的不同應用,能夠做為一個系統共同工作。 無論是財務軟件、OA系統、客戶關系管理、倉儲/物流,還是在線商城、BBS/社區、CMS、Blog,以及您自己開發的應用, 如果您一開始就采用了蜂巢,那么將這些應用整合成一個統一的系統,就不再是一項招標工程,您自己在周五下午就可以搞定。
以下是開發人員感興趣的內容:
模版編織
模版編織和AOP很像,但它是針對網頁模版的。蜂巢沒有采用流行的PHP網頁模版引擎,而是設計了一個更高級的模版引擎:能夠定位到模版中的任何一個元素,并在其上“織入”另一段模版代碼。 當你需要開發一個新擴展來增強某個擴展時,模版編織是一項非常有用的技術。
面向方面編程(AOP)
蜂巢實現了PHP語言的AOP方案,允許你在系統中定義執行點,并在執行點上“切入”一些新的代碼,從而改變或禁用系統已有的行為。 AOP是蜂巢擴展和擴展直接主要的增強方案之一。
BEAN/POD 對象構建
BEAN/POD 對象構建是一種通過PHP數組(array)來配置對象內部屬性的接口,它的目標是簡化 OOP中的對象創建過程。 Controller/View/Model/Widget/Verifier 等等業務邏輯中常用的對象,都可以通過一個 bean config 規范的數組(array)來創建,這使得在蜂巢中開發很像某些 js 框架的習慣。
二次發布
蜂巢采用了開放的授權協議,而且還提供了一些用于打包擴展和制作發行版本的工具,您可以基于蜂巢開發屬于您自己的成品,并以您自己的名稱和Logo重新發布。
“代碼即知識”
蜂巢提供了一個文檔編譯引擎,用于分析源代碼并生成對應 API文檔、WIKI,以及例子。 這使得蜂巢的開發文檔、例子的編寫工作變的輕松了。文檔的時效性也更強——它們都是從當前版本的源代碼中編譯出來的。