低代碼引擎半歲啦,來跟大家嘮嘮嗑…(低代碼開發(fā)平臺介紹)

作者:劉菊萍 (絮黎)

之前低代碼引擎一直是在阿里集團(tuán)內(nèi)部進(jìn)行孵化的,對外開源算是一次新生。從2022年3月23日開源至今,我們的低代碼引擎已經(jīng)半歲了,希望借這個機(jī)會來跟大家嘮嘮嗑。

  • 開源地址:https://github.com/alibaba/lowcode-engine
  • 官網(wǎng): 「鏈接」

不知道大家是不是已經(jīng)把低代碼引擎用到生產(chǎn)環(huán)境了?當(dāng)然估計大家也遇到了很多問題,畢竟 issues 越來越多…今天呢,我們倒也不是來幫大家解決 issues 的,主要是想跟大家總結(jié)一下上半年的工作,當(dāng)然也想?yún)R報一下我們后續(xù)的規(guī)劃,讓大家知道低代碼引擎后續(xù)發(fā)展的藍(lán)圖,讓大家好判斷自己的低代碼平臺和我們的低代碼引擎規(guī)劃上是否能匹配。

低代碼引擎過去半年的動態(tài)

低代碼引擎在過去的半年還是發(fā)生了很多事情的。

低代碼引擎出生了

低代碼引擎在 3.23 號出生了,隨著一起出生的還有我們的《低代碼引擎技術(shù)白皮書》。在半年后的今天有 8000 多哥哥姐姐們喜歡它,真的讓我們很開心。

低代碼引擎的兄弟姐妹

當(dāng)然低代碼引擎出生后,我們的 Fusion 低代碼物料、精品插件等兄弟姐妹也都一起正式跟大家見面了。

并且在大家的熱情下,我們在開源之后也對外開放了 Antd 的低代碼物料。

之后我們也還會繼續(xù)加油,讓更多兄弟姐妹也出來見見市面,比如我們的自然布局相關(guān)物料 pro-layout。

低代碼引擎的小伙伴們

低代碼引擎也認(rèn)識了很多新的小伙伴,這些小伙伴都很熱心。有幫忙回答 issue 的小伙伴;有幫忙提 PR 的小伙伴;有在社區(qū)貢獻(xiàn)生態(tài)的小伙伴;更有長期參與維護(hù)的小伙伴。感覺我們的隊伍越來越強(qiáng)大了??纯催@些小伙伴們都干了什么:

  • twinkle77、haloworld007、Immanding 實(shí)現(xiàn)了一套 formily 和 Ant Design Pro 的低代碼物料
  • Dogtiti 基于 next 實(shí)現(xiàn)了高級組件低代碼物料
  • keuby 實(shí)現(xiàn)了基于低代碼引擎的 Vue 渲染器和適配器
  • twinkle77 小伙伴長期參與到數(shù)據(jù)源插件的維護(hù)中,給了我們很大的幫助

當(dāng)然還有很多小伙伴給我們貢獻(xiàn)代碼,這里就不一一感謝了。

低代碼引擎半歲啦,來跟大家嘮嘮嗑...(低代碼開發(fā)平臺介紹)

低代碼引擎協(xié)議對外營業(yè)了

低代碼引擎的三大協(xié)議是引擎的基礎(chǔ),我們也已經(jīng)把它放到開源倉庫中了,后面大家也可以對協(xié)議提出修改意見并提 PR 了。

低代碼引擎系列文章和分享

我們也在持續(xù)發(fā)布一些文章,并在一些大會上進(jìn)行分享,期望能把我們的思考/實(shí)踐分享給大家。

  • 磁貼布局在釘釘宜搭報表設(shè)計引擎中的實(shí)現(xiàn)
  • 關(guān)于 LowCode&ProCode 混合研發(fā)的思考
  • 低代碼渲染那些事
  • 基于 LowCodeEngine 的調(diào)試能力建設(shè)與實(shí)踐
  • 低代碼技術(shù)在研發(fā)團(tuán)隊的應(yīng)用模式探討

這半年的總結(jié)大概就是這些了,接下來我們還會再接再厲的~

未來的低代碼引擎是什么樣呢

低代碼引擎現(xiàn)在剛半歲,還在茁壯成長中,但是正如一個小孩想成長成一個大人,我們低代碼引擎也在幻想自己長大之后是什么樣的。低代碼引擎期望成長起來的自己是什么樣的呢:

  • 所有流行的物料庫都有對應(yīng)的開箱即用的低代碼物料,比如包括 Ant Design、Ant Design Mobile、Element 等等。
  • 支持 Vue、React、Angular 等等流行前端框架的出碼和渲染,甚至還有 Rax、Taro、React-Native 等等。
  • 可以提供多種常見的解決方案,比如邏輯編排、圖編排、絕對布局畫布、小程序解決方案、跨端解決方案等等。
  • 可以提供不同規(guī)模的低代碼解決方案,包括組件級別、區(qū)塊級別、頁面級別和應(yīng)用級別。包括他們的出碼、渲染和編排等等。
  • 對于存量頁面和低代碼頁面之間的問題,還需要配合微前端集成、也能提供各種混合研發(fā)方式等等。

為了成長成這樣的低代碼引擎,低代碼后續(xù)的技能點(diǎn)主要點(diǎn)在這幾個方向:簡單、可靠、強(qiáng)大、克制。

簡單

低代碼引擎自己也知道現(xiàn)在它的學(xué)習(xí)門檻還是比較高的,對于初級前端和非前端來說,上手的過程更加困難。所以為了讓更多的小伙伴能使用上低代碼引擎,我們期望未來的低代碼引擎使用起來是簡單的,它會提供越來越簡單的使用方式,最終對于開發(fā)者來說,大幅度減少低代碼引擎的難度,讓低代碼平臺的定制更加簡單。

為了實(shí)現(xiàn)這個目標(biāo),一方面我們會把我們的文檔持續(xù)的進(jìn)行完善并且社區(qū)化維護(hù)。另外一方面我們會進(jìn)一步借助社區(qū)小伙伴的力量,通過在線化的插件、物料等市場,將社區(qū)的能力集成到一起。也會提供設(shè)計器的可視化配置方式,未來也可以通過低代碼的方式開發(fā)低代碼平臺了。

可靠

讓用戶可以無憂使用最新版本,這應(yīng)該是開源框架最基本的能力了,低代碼引擎也需要制定新的策略來滿足這一原則。

  • 低代碼引擎的新能力都會基于標(biāo)準(zhǔn)協(xié)議,一切改動協(xié)議先行
  • 低代碼引擎會保證架構(gòu)的穩(wěn)定性,也會準(zhǔn)守 Semver 的標(biāo)準(zhǔn),讓社區(qū)小伙伴放心升級
  • 完整的灰度策略,在發(fā)布正式版本之前會在阿里集團(tuán)內(nèi)部使用量最多的低代碼產(chǎn)品上穩(wěn)定運(yùn)行

為此我們后續(xù)的運(yùn)營狀態(tài)也會微微調(diào)整

  • 社區(qū)群(微信群和釘釘群)還是維持現(xiàn)狀,簡單的問題小助手會回答,也有熱心的小伙伴回答,真的很感激這些熱心的小伙伴,當(dāng)然比較復(fù)雜的還是建議 issue 提問。除此之外我們會再維護(hù)一個貢獻(xiàn)者群,貢獻(xiàn)過的小伙伴都可以加入我們。
  • 穩(wěn)定的發(fā)版節(jié)奏,每 2-3 周會穩(wěn)定發(fā)布新版本,迭代節(jié)奏穩(wěn)定,每年 2 個比較大的 release。
  • 每年 1-2 次線上 meetup。

強(qiáng)大

低代碼引擎未來會提供更多強(qiáng)大的能力來支持各種低代碼平臺的場景,包括但不限于:

  • 支持組件級別、區(qū)塊級別、頁面級別和應(yīng)用級別的設(shè)計能力,包括他們的出碼、渲染和編排
  • 支持多種前端框架的出碼和渲染,例如 Vue、React、Angular、Rax、Taro、React-Native…
  • 支持越來越多的解決方案,比如邏輯編排、圖編排、絕對布局畫布、小程序解決方案、跨端解決方案等等。
  • 支持不同低代碼平臺的定制能力,包括主題定制、畫布定制等等

最近半年低代碼引擎在能力上的規(guī)劃在文章的后半部分,這里不做過多的介紹。

克制

當(dāng)然,低代碼引擎也需要有一些限制,不能什么都做也不能什么都不做。我們需要給低代碼引擎和官方生態(tài)上制定一個設(shè)計原則。指出來我們未來會做什么以及不會做什么。

低代碼引擎設(shè)計原則:

  • 低代碼引擎是對協(xié)議的實(shí)現(xiàn)和擴(kuò)展的支持,且只做協(xié)議的實(shí)現(xiàn)和擴(kuò)展支持。
  • 低代碼引擎的擴(kuò)展能力開放上是克制的。在交互形態(tài)上 Skeleton 由官方管控,不提供定制能力,包括各區(qū)域基本的交互方式、以及彈窗規(guī)范等:低代碼引擎設(shè)計器需要作為頁面最外層來使用,不作為頁面的一部分嵌入式使用。
  • 為了給生態(tài)提供更好的通用性和穩(wěn)定性保障機(jī)制,低代碼引擎的相關(guān)生態(tài)的定義和使用會更加規(guī)范和基于顯示聲明,包括插件、設(shè)置器和物料等等。

低代碼引擎官方生態(tài)原則:

低代碼引擎的生態(tài)分為官方維護(hù)和社區(qū)維護(hù)兩種,目前聲明的是后續(xù)在官方生態(tài)上的原則:

  • 官方生態(tài)會提供 80% 最常用的精品生態(tài)插件,更多的插件需求由小伙伴們自己擴(kuò)展
  • 官方生態(tài)主要提供及維護(hù)一份精品物料
  • 官方生態(tài)未來會提供多種場景的能力,包括中后臺、移動應(yīng)用、小程序、邏輯編排等等
  • 官方生態(tài)會提供一系列的周邊能力,包括具有可流通的生態(tài)插件市場。

低代碼引擎近期會做什么

低代碼引擎有了長遠(yuǎn)的愿景和目標(biāo),為了更加靠近我們的目標(biāo)。讓我們來看看低代碼引擎接下來的半年都會做什么呢。

應(yīng)用級編輯器

目前低代碼引擎在設(shè)計上是需要在單獨(dú)的頁面上使用的,他的擴(kuò)展功能也都是適用于頁面設(shè)計的。

低代碼引擎半歲啦,來跟大家嘮嘮嗑...(低代碼開發(fā)平臺介紹)

但是大多數(shù)的場景中,我們都不是只設(shè)計一個頁面,我們還有導(dǎo)航配置、依賴配置、低代碼組件和邏輯編排等等應(yīng)用級別需要的功能。

甚至我們希望在低代碼搭建的過程中能有 VsCode 般絲滑的體驗??焖偾袚Q頁面,快速配置應(yīng)用能力等等。而不是現(xiàn)在開發(fā)一個頁面和一個低代碼組件就需要打開至少三個新的標(biāo)簽頁。如果開發(fā)的頁面和組件更多,需要打開的標(biāo)簽頁也就越多。

低代碼引擎半歲啦,來跟大家嘮嘮嗑...(低代碼開發(fā)平臺介紹)

因此,在使用低代碼平臺時,我的瀏覽器常常就成為了這樣的。

低代碼引擎半歲啦,來跟大家嘮嘮嗑...(低代碼開發(fā)平臺介紹)

為了解決這些問題,我們提出來項目級別設(shè)計器的擴(kuò)展方案。

  • 引擎主框架 Skeleton 能力升級,支持項目級別的擴(kuò)展方案,提供更多的擴(kuò)展點(diǎn)。
  • 引擎多畫布上下文快速切換,正如 VsCode 文件會有 JS、JSX、TS 等不同類型,對于不同類型的文件有不同的編輯狀態(tài)和提示。對于一個應(yīng)用來說,我們的文件也會有多種類型,例如:表單頁面、邏輯編排、低代碼組件、中后臺頁面等等。因此引擎需要提供多畫布切換以及共存的能力,這樣才能更好的完成應(yīng)用的搭建能力。

未來應(yīng)用級別的能力可能是這樣的,基于這樣的擴(kuò)展能力,我們就可以擴(kuò)展出應(yīng)用級設(shè)計器了。

低代碼引擎半歲啦,來跟大家嘮嘮嗑...(低代碼開發(fā)平臺介紹)

除此之外我們在 S2 也還會探索和研發(fā)的能力有,后續(xù)也可能會開源或分享我們的解決方案:

  • 圖編排能力,通過提供圖編排的能力,我們的邏輯編排能力也可以可視化了。
  • 主題定制能力,可以對設(shè)計器的主題進(jìn)行定制,設(shè)計器再也不會千篇一律了。

開發(fā)更多社區(qū)周邊能力

一款新的免費(fèi)的低代碼產(chǎn)品

在項目開源后我們發(fā)現(xiàn),很多用戶使用我們的 DEMO 來進(jìn)行頁面搭建來自用,但是 DEMO 實(shí)際上還不具備這樣的能力。經(jīng)過考慮,我們在接下來的半年會提供免費(fèi)的一款低代碼產(chǎn)品供大家簡單搭建頁面使用,當(dāng)然免費(fèi)的就希望大家答疑上手下留情,多多互助。

低代碼引擎半歲啦,來跟大家嘮嘮嗑...(低代碼開發(fā)平臺介紹)

低代碼生產(chǎn)組件能力

目前社區(qū)的低代碼組件都是 Pro Code 組件,相當(dāng)于物料的生產(chǎn)還沒有低代碼化。而我們的低代碼組件在阿里內(nèi)部也已經(jīng)有了將近一年的實(shí)踐,接下來我們也會在造物平臺上上線,讓大家可以通過低代碼的方式來生產(chǎn)低代碼組件。

這個主題也會在接下來的 GMTC 大會上進(jìn)行分享,有興趣的小伙伴可以關(guān)注一下。

低代碼設(shè)計器定制 Playground

通過 Playground 我們可以在線快速插拔我們的插件、物料和設(shè)置器等等,所見即所得。這讓低代碼設(shè)計器的研發(fā)低代碼化成為了可能,也讓低代碼平臺的定制越來越簡單。

當(dāng)然官方和社區(qū)的插件、物料、設(shè)置器也有了可視化的展示空間。

心有余而力不足部分

還有很多事情我們也都是希望能做,但是由于優(yōu)先級一直沒法安排的事情。在這里我們先列出來,有需求的小伙伴可以參與進(jìn)來。

  • 更多場景的 demo,這些 demo 包括不同的腳手架(ice、umi、egg、qiankun)、不同技術(shù)棧(Rax、React、Vue)、不同的應(yīng)用場景(PC、H5)等等。
  • 更多的物料生態(tài),現(xiàn)在已經(jīng)有了 formily、Ant Design、Next Pro、Fusion。當(dāng)然我們還有很多沒有實(shí)現(xiàn)或者我們沒有感知到的,例如 antd-mobile、Element、Semi Design、Element for React,甚至在支持 Vue 技術(shù)棧之后,Element 等組件庫也需要低代碼化。
  • 更多技術(shù)棧的支持,包括呼聲最高的 Vue,還在等社區(qū)大佬開源。

當(dāng)然我們也會持續(xù)建設(shè)越來越多的教程文檔、越來越多的精品插件等等,也希望有小伙伴能參與進(jìn)來,幫助我們加快進(jìn)程。

相關(guān)新聞

聯(lián)系我們
聯(lián)系我們
公眾號
公眾號
在線咨詢
分享本頁
返回頂部