OneCode低代碼引擎專有存儲技術(shù)(低代碼應(yīng)用)
前言
低代碼是一個新興的技術(shù),有著非常明確而鮮明的技術(shù)特點(diǎn),比如:拖拽組件、可視化編程、零代碼編程等等。但傳統(tǒng)軟件企業(yè)在進(jìn)行技術(shù)融合時卻往往是困難重重,舊有的技術(shù)積累很難能繼承應(yīng)用過來。本文作為一組技術(shù)分析,來逐一分解低代碼背后的支撐技術(shù)。今天我們給大家?guī)淼囊粋€專題分析是,低代碼平臺的專有存儲技術(shù)。
一,低代碼平臺與存儲系統(tǒng)
低代碼平臺不是一個新興的概念在早在2000年初期,就有類似于RAD的單頁網(wǎng)頁模型概念。在實(shí)際業(yè)務(wù)實(shí)現(xiàn)中絕大多數(shù)的業(yè)務(wù)支撐軟件中也都會有類似于“智能表單”之類的泛低代碼應(yīng)用。在這些應(yīng)用中多數(shù)都采用的是“代碼模版”技術(shù),將表單模版存儲于數(shù)據(jù)庫,或者轉(zhuǎn)存成文件,運(yùn)行期利用模版技術(shù)進(jìn)行動態(tài)渲染。這在簡單單一的功能應(yīng)用中尚可滿足需求,但在低代碼平臺背景下就有點(diǎn)捉襟見肘。其重要表現(xiàn)在以下幾個方面:
(1) 單頁向多頁多目錄的支持
在表單系統(tǒng)功能相對單一,關(guān)聯(lián)資源也會比較少。但在低代碼平臺中,仍然采用單頁結(jié)構(gòu)的話不但使得頁面功能冗余嚴(yán)重,日后的維護(hù)也會帶來非常大的負(fù)擔(dān)。這就需要低代碼系統(tǒng)優(yōu)先有支持的便是web目錄尋址以及異步按需裝載技術(shù),同時這一技術(shù)也對傳統(tǒng)的后端頁面存儲提出了新的要求。
在衡量低代碼平臺優(yōu)劣的指標(biāo)中支持“全棧開發(fā)”是一個非常重量級的商業(yè)指標(biāo),也是“無代碼”應(yīng)用的關(guān)鍵支撐技術(shù),在全棧開發(fā)支持中最常用的技術(shù)便是代碼生成,在一定的模型支撐下,配合前端UI模型,生成與之匹配的后端代碼模型,實(shí)現(xiàn)低代碼/無代碼應(yīng)用。這一特性為低代碼平臺的存儲應(yīng)用帶來了新的挑戰(zhàn):
添加圖片注釋,不超過 140 字(可選)
- 頁面模型與后端代碼的不可分割性需要頁面模型與后端代碼模型相互可感知其存在與變化。
- 對于生成的代碼多數(shù)會采用更高級的語言來支撐,這就需要在存儲技術(shù)上要能感知源碼、以及其編譯變化。
- 代碼生成的最大一個目的在于便于后期二次開發(fā),這就需要存儲模型對于手工編譯與在線即時編譯有一定的感知和把控能力。
(3) 開發(fā)者支持
在低代碼應(yīng)用特性中,有一個非常大的亮點(diǎn)便是屬性和邏輯方法的可視化編輯,但單頁應(yīng)用中我們通常會將頁面進(jìn)行組件化的劃分,然后抽取其屬性,事件以及可操作方法,通過可視化的方式講這些屬性和方法展示給“開發(fā)者”進(jìn)行可視化操作。但在真實(shí)的項(xiàng)目開發(fā)中,單一的頁面可視是遠(yuǎn)遠(yuǎn)不夠的。在可視化操作中,很多頁面都會需需要跨組件跨頁面操作。而在全棧支持開發(fā)中甚至還會需要在“后端全代碼”開發(fā)中能夠支持頁面中的出入?yún)⒌却a補(bǔ)全操作。并且能針對類型出入?yún)⒛P瓦M(jìn)行預(yù)編譯混合編譯支持。這些需求對于“低代碼存儲”提出了更新更多的要求。
(4) DevOps 在線協(xié)同支持
低代碼開發(fā)中很重要的一個特性便是“一鍵發(fā)布” 快速部署。但便捷并不等省略,在貫穿整個設(shè)計(jì)、開發(fā)、測試、部署環(huán)節(jié)中,會涉及到更多的產(chǎn)品、開發(fā)、測試、運(yùn)維等多種角色介入。而在代碼管理以及項(xiàng)目流程管理方面這需要存儲系統(tǒng)針對編譯系統(tǒng)、代碼版本應(yīng)用、用戶協(xié)同管控等多個方面提供支持。
二,OneCode-VFS存儲系統(tǒng)設(shè)計(jì)
OneCode-VFS 是OneCode低代碼引擎的核心支撐系統(tǒng),VFS本身采用的是獨(dú)立部署的應(yīng)用。對外提供標(biāo)準(zhǔn)的微服務(wù)接口。低代碼引擎中:可視化設(shè)計(jì)器、DSM編譯器、DevOps等多個組件通過,VFS驅(qū)動工具訪問VFS存儲應(yīng)用,并相互感知文件變化協(xié)同服務(wù)。
(1)OneCode-VFS 功能組成
(2)OneCode-VFS 基礎(chǔ)服務(wù)功能
(3) VFS-低代碼應(yīng)用存儲服務(wù)
三,OneCode-VFS基礎(chǔ)功能設(shè)計(jì)
(1)存儲功能總體設(shè)計(jì)
添加圖片注釋,不超過 140 字(可選)
(2)開放協(xié)議支持
(3)Storage存儲系統(tǒng)設(shè)計(jì)
四,低代碼應(yīng)用支撐
(1)web靜態(tài)代理
(2)用戶工程支持
(3)模板預(yù)定義
設(shè)計(jì)器插件組件庫
出碼模板庫
插件庫
五,DSM編譯服務(wù)支持
(1)OneCode 項(xiàng)目生命周期
(2)研發(fā)知識庫
模型庫可視化
邏輯可視化
添加圖片注釋,不超過 140 字(可選)
代碼補(bǔ)全應(yīng)用