2023年業(yè)務開發(fā)“銀彈”-低代碼平臺建設(低碼精華篇)_第1頁
2023年業(yè)務開發(fā)“銀彈”-低代碼平臺建設(低碼精華篇)_第2頁
2023年業(yè)務開發(fā)“銀彈”-低代碼平臺建設(低碼精華篇)_第3頁
2023年業(yè)務開發(fā)“銀彈”-低代碼平臺建設(低碼精華篇)_第4頁
2023年業(yè)務開發(fā)“銀彈”-低代碼平臺建設(低碼精華篇)_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

業(yè)務開發(fā)“銀彈”——低代碼平臺建設(低碼精華篇)class="aligncentersize-fullwp-image-5739198"src="/wp-files/2023/01/3yRKgQHyciZJOwqAf8RU.png"alt=""width="900"height="420"/>

這兩年低碼的概念始終很火,看上去像是解決代碼開發(fā)的銀彈,但是低碼并不是全部的場景都是適用的,在一些“業(yè)務規(guī)律簡單且特別易變,但單業(yè)務功能點的規(guī)律簡單度不是很高”的場景下,低碼平臺是這類業(yè)務系統(tǒng)提效的提效利器,比如說審批流管理、營銷活動搭建、常規(guī)H5建站工具、報名簽到功能等等,業(yè)界也有相當多的低碼平臺布局。

先看一下低碼的概念,通常是指一種可視化的開發(fā)方法,用較少的代碼、較快的速度來交付應用程序,將程序員不想開發(fā)的代碼做到自動化稱之為低代碼,相像的概念還有“無代碼”,也是一種開發(fā)方法,通常是面對非技術性員工,不需要寫任何一行代碼來構建應用程序,所以兩者的差異主要是面對人群的不同和對于代碼忍受的力度。拿拖拽式H5建站平臺來說,拖拽式H5建站平臺本質(zhì)上屬于無碼、而基于H5建站的DSL或者規(guī)章引擎進行編程則屬于低碼、H5建站平臺本身的開發(fā)屬于純代碼開發(fā)。

這些概念的沒必要區(qū)分的那么清晰,大家通常說的“低碼”大多是泛指“無碼”+“低碼”。

本文主要站在活動工廠的角度來看低碼建設,其中的低碼平臺的建設思路是互通的,都是大致類似的思想和架構方案,其他業(yè)務場景適當微調(diào)適配就可以啦,個人認為在大業(yè)務領域下的低碼建設是最高效的,適用于全部業(yè)務并且純粹的低碼是不存在的(僅僅個人觀點)。

一、收益分析

前面提到做低碼平臺多么多么有效,究竟是如何提效的下面來看下:

1.平臺定位分析

我們做一個系統(tǒng),通常來說參加方有四個:

功能的直接使用方(用戶、銷售、運營、三方系統(tǒng));功能的運維方(負責功能的后臺運營比如運營、產(chǎn)品);功能的構建方(研發(fā));機器成本等基礎資源運維方。2.收益分析

我們的系統(tǒng)的成本主要是研發(fā)構建成本、功能運維成本、資源成本,首先低碼手段能夠直接的降低功能的開發(fā)成本、功能優(yōu)化迭代速度快之后功能運營成本也間接得到優(yōu)化,由于低碼是基于Faas思想做的資源隔離部署,肯定程度上也節(jié)約了機器資源。

當節(jié)約后的開發(fā)成本能蓋過新增低碼平臺的工作量時,整體收益無疑是正向的。

純代碼、無碼化、低碼化三種方式的開發(fā)迭代成本差異,拿做只有一個玩法的活動來看:

二、代碼切入點

我們通常的開發(fā)流程在業(yè)務提需之后,我們首先是領域建模,然后是服務構建,最終發(fā)布運行(B、C兩端),我們低碼的環(huán)節(jié)是針對代碼建模、服務構建兩部分進行的,每個模型的代碼建模環(huán)節(jié)主要有職責的定義、屬性定義、規(guī)律開發(fā)三部分,服務構建過程主要有模型直接串聯(lián)關系、組合關系以及關系的決策規(guī)律的開發(fā)。

三、低碼——組裝式架構設計思路

對于這部分的低碼化,首先從粗粒度不斷向下拆解,我們一個領域某場景下的業(yè)務可以分拆為若干的功能,功能由若干的業(yè)務力量單元組成,業(yè)務力量單于由若干的原子力量構成,假如想進行低碼的設計,最直觀的思路就是拼圖或者搭積木的形式來構建,然后過程中進行一些業(yè)務規(guī)律的填充。

所以整體的思路就是上述拆解的逆過程:

上述就是一種經(jīng)典的Faas+組裝式架構的設計方法,不僅是低碼的落地可以如此使用(利用低碼手段進行組裝),我們對于日常一些簡單業(yè)務的架構也可以是同樣的思路,面對散落的零件進行組裝式開發(fā)(只不過是純粹的代碼復用思路或者服務復用思路而已),常見的展現(xiàn)型web服務、密集計算類服務都是這樣的處理思路。

易變規(guī)律的處理:

對于一些其中特別易變的業(yè)務規(guī)律,用低碼去做雖然成本小了,但是面對巨大的變更照舊是不合適的,這時候這部分仍舊需要從無碼規(guī)律中抽離,在規(guī)章引擎或者DSL之上建設動態(tài)規(guī)律注入,以此應對變化。

四、整體規(guī)律架構

依據(jù)上述思路,整體進行歸納抽象后整體的規(guī)律架構差不多長這樣:

藍色部分為核心的低碼力量部分:網(wǎng)關負責安排我們服務功能點對應的URI;中間層集成核心的對象建模、服務定義、流程編排、既定簡單領域等核心功能;其中最底層為低碼驅(qū)動引擎:低碼解析引擎(驅(qū)動)、基礎函數(shù)的注冊發(fā)覺力量(地址)、負責服務串聯(lián)編排的業(yè)務大事總線(掌握)、對于大事發(fā)生時對于交互維護的總線(數(shù)據(jù)),感覺有點像CPU+三大總線結構,哈哈哈哈。

墨綠色部分為低碼工具庫:首先是當前平臺集成好的函數(shù)庫;然后是對于外部函數(shù)或者服務的接入;最右是低碼依靠的一些基礎力量:上下文存儲、自定義存儲、表達式引擎、代碼生成器等等;常用問題的解決方案,假如大家興致比較高的話,可以單獨溝通或者單獨描述。

運行視圖:

五、看個demo

以上述整體的規(guī)律架構所呈現(xiàn)的功能來看一下如何搭建一個活動模版,如何落地一個活動。

1.確定玩法

首先本次demo的活動中有盲盒抽獎、任務列表、兌換、金豆代幣、養(yǎng)成小嬉戲、簽到等若干玩法,整個活動中的大實體基本有這么幾個,我們就以這幾個模型進行功能設計,確定模型之后再確定玩法之間的關聯(lián)關系設計即可。

2.落地金豆玩法

首先金豆本質(zhì)上就是個代幣,也就是基礎的流水賬模型,我們直接使用基礎函數(shù)庫中的賬務模型作為單元力量,然后并不需要做額外的規(guī)律處理,只需要給這個服務給予一點業(yè)務屬性(名稱等等),然后選擇我們用的到的基礎函數(shù),便可以直接構建出金豆增加、金豆扣減、明細查詢、余額查詢等力量。最終完成api的映射實現(xiàn)“金豆”力量暴露即可。

3.落地簽到玩法

簽到相對麻煩些,業(yè)務屬性相對較重,沒有現(xiàn)成的模型作為輸入支撐,此時我們需要做基礎函數(shù)單元的“組合拼裝”。

確定簽到配置的元數(shù)據(jù),實體中有活動id、各周期限制等等;確定簽到實體的元數(shù)據(jù),實體中有用戶ID、活動ID、計數(shù)周期、當前計數(shù)等等;確定我們要實現(xiàn)的輸入力量:簽到、補簽、增加簽到機會、增減補簽機會;確定我們要實現(xiàn)的輸出力量:簽到勝利、補簽勝利、連續(xù)簽到、簽到記錄;依據(jù)我們要實現(xiàn)的功能確定用到的基礎力量:計數(shù)、周期計算、機會力量、限制力量等等;對于基礎力量進行組裝拼接,這里可以有3種模式,我們可以通過拖拽的形式將基礎函數(shù)進行組合進行輸入輸出的關聯(lián)、各種if-else的處理;我們也可以直接編寫代碼實現(xiàn)規(guī)律處理;也可通過編寫系統(tǒng)內(nèi)感知的DSL簡化拼接規(guī)律。實現(xiàn)輸入輸出的api映射暴露至此就完成了一個簽到玩法的搭建。4.落地盲盒玩法

盲盒抽獎的玩法組裝拼接也是類似的,只不過用到的基礎函數(shù)不同。

確定配置的元數(shù)據(jù),比如活動、獎池、獎品,及其中的對應字段;確定業(yè)務實體的元數(shù)據(jù),比如用戶當前狀態(tài)、用戶中獎記錄,及其中的對應屬性;確定服務的輸入:開盲盒、增加盲盒機會;確定服務的輸出:盲盒獎品列表、開盲盒記錄;確定對應服務規(guī)律中的基礎函數(shù):機會、周期、限制、概率、庫存等等;依據(jù)功能規(guī)律進行基礎力量的編排,同樣是三種方式,比如拖拽完成抽獎功能,當前周期、機會-1、限制消耗+1、獎池選擇、概率選擇、計數(shù)統(tǒng)計;完成對應服務的API對應。5.玩法間的編排

當我們完成玩法(業(yè)務力量單元)的定義之后,我們就需要對于整體規(guī)律進行編排,把這些相對完整的工具組合成一場真正的活動。此時我們需要做的是對于玩法各種輸入輸出的關聯(lián),并對于關聯(lián)關系進行動態(tài)決策(場景、身份等)。

比如說:

任務完成增加盲盒機會簽到每連續(xù)十天上報周期任務完成每日簽到增加金豆消耗金豆兌換盲盒機會某些高價值任務完成增加盲盒機會簽到完成增加盲盒機會這塊的詳細設計可以參照之前《活動流程編排》一文。

6.前后端的協(xié)作

整體看下來我們需要一個這樣的低碼平臺“開發(fā)環(huán)境”來構建我們的低碼產(chǎn)物,在編輯器里可以完成基礎業(yè)務單元的組裝工作、業(yè)務單元之間的拼接工作等等。

完成整體活動或者說我們業(yè)務功能的搭建之后,接下來的工作是對于我們暴露出來的力量進行適配搭建前端界面,其中包括B端運營界面、C端用戶使用界面。對于B端運營操作界面,由于樣式上要求并沒有那么高,可以定義一個前端模版對于低碼過程中生成的元數(shù)據(jù)及API接口進行直接渲染。對于C端用戶使用界面,可以基于力量,API進行頁面功能的構建,通過前端的低碼應用進行頁面的拖拽搭建。

六、代碼建設后的收益

整體看下來低成本低碼平臺建設后,對我們的收益是很大的,整體的思路也是切實可行的,整個建設過程對于業(yè)務收益是比較大的,比如:

沉淀的基礎力量,除低碼平臺可以使用外,日常純代碼開發(fā)也是可以直接用的,也為無碼功能增加了一件可復用力量。業(yè)務單元力量,由于迭代效率較高,功能豐富度、優(yōu)化程度要更好,并且許多時候可直接復用。業(yè)務功能,力量在使用過程不斷沉淀,可以直接復用,由于可以直接拖拽編排,整體的開發(fā)成本是直線下降的。對于功能來說,迭代效率更高。

整體是好的,但是在低碼平臺的建設啟動及過程中需要留意的是:

1)術業(yè)有專攻,不要貪大求全,在適合且某個特定的大業(yè)務領域下建設才是合理的。

2)函數(shù)庫的積累是一個循序漸進的過程,依據(jù)訴求逐步沉淀基礎函數(shù)才是王道。

3)低

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論