第一代:代碼輔助手段**
應(yīng)用定制開放依然以原生C++/JAVA代碼為主,元數(shù)據(jù)主要用于生成原代碼的一種輔助手段。
當(dāng)前很多系統(tǒng)中,大部分元數(shù)據(jù)處于這個(gè)階段,前端重點(diǎn)只有Gadget元數(shù)據(jù)其他元數(shù)據(jù)未抽象呈現(xiàn),甚至前端沒有元數(shù)據(jù)的概念;后端服務(wù)編排(以POJO實(shí)現(xiàn)為主)、服務(wù)實(shí)現(xiàn)(BO全是代碼)、數(shù)據(jù)對(duì)象(VO全是代碼)也是以代碼為主開發(fā)。
第二代:端到端元數(shù)據(jù)(Siebel)
應(yīng)用定制開發(fā)基于元數(shù)據(jù)對(duì)象視圖進(jìn)行,從前端界面、組件、事件、接口、流程、服務(wù)、模型整個(gè)端到端都已經(jīng)抽象成元數(shù)據(jù)對(duì)象,任意定制需求最終都分解成一個(gè)Task去完成整個(gè)元數(shù)據(jù)的配置,定制開發(fā)工具以離線IDE為主,在線提供受限的能力。
Siebel 版本開發(fā)定制處于這個(gè)階段。
第三代:元數(shù)據(jù)SaaS化(Salesforce)
應(yīng)用定制開發(fā)在現(xiàn)場(chǎng)在定制閉環(huán),應(yīng)用的定制開發(fā)能力通過SaaS化的能力對(duì)外提供出來,支持多租戶的并發(fā)定制,定制開發(fā)人員通過Chrome等瀏覽器就可以完成現(xiàn)場(chǎng)定制需求的配置開發(fā),可在線完成界面主體調(diào)整、界面Gadget組件、新Gadget開發(fā)、在線流程變更、業(yè)務(wù)規(guī)則調(diào)整、模型擴(kuò)展,甚至新流程、新服務(wù)、新模型、新界面的中小特性開發(fā)。
同時(shí)保證在線配置元數(shù)據(jù)(包括服務(wù)腳本邏輯)的安全性,通過元數(shù)據(jù)引擎沙箱技術(shù)對(duì)運(yùn)行所耗費(fèi)的CPU時(shí)間、內(nèi)容容量、SQL語句數(shù)量等數(shù)據(jù)來判斷元數(shù)據(jù)是否正常,以避免影響到屬于其他租戶的應(yīng)用,對(duì)于腳本需要自帶能覆蓋其75%代碼的測(cè)試用例否則不允許調(diào)用等措施,從而確保平臺(tái)整體運(yùn)行的穩(wěn)定。
Salesforce 版本開發(fā)定制處于這個(gè)階段。
第四代:元數(shù)據(jù)人性化
就像CRM從以O(shè)CRM為主向以ACRM為主轉(zhuǎn)變,未來可能像HCRM(HappyCRM)轉(zhuǎn)變,不過可以確定的是未來編程肯定會(huì)越來越簡(jiǎn)單,就像公司另外一個(gè)同事在硅谷調(diào)研發(fā)現(xiàn)硅谷有很多創(chuàng)新公司就做一件事:為編程者提供極易的軟件創(chuàng)造平臺(tái),這樣對(duì)大部分軟件人員來說,編程并不是最重要的,業(yè)務(wù)本身創(chuàng)造才是;所以抽象的元數(shù)據(jù)可能會(huì)逐步往自然語言的方向進(jìn)行發(fā)展,當(dāng)然第四代還不是很清晰。