无码人妻丰满熟妇奶水区码,麻豆一区区三,亚洲日韩欧美精品综合,亚洲无码地址

低代碼平臺中的“不可能三角”(不可替代代碼)

近年來,“低代碼”這一概念在資本市場上愈發(fā)火熱,各種低代碼平臺項目也紛紛上馬。

然而,此類平臺的設計者與維護者們,或早或晚,終將會面對“低代碼”與生俱來的一組底層矛盾,而是否能合理地處理這組矛盾,最終決定了此平臺的發(fā)展前景。

背景

我們團隊正在維護一套基于DSL(領域特定語言)的表單管理平臺。該平臺由客戶方團隊自建,其中包含了前端UI、數(shù)據(jù)管理、表單規(guī)則管理等模塊。設計目標是:讓業(yè)務人員以書寫DSL的方式定義表單模板,此后可以直接基于模板生成UI并管理表單數(shù)據(jù),從而達到低代碼甚至零代碼創(chuàng)建表單的效果。該平臺自建立以來,已經(jīng)支持了數(shù)百個大型表單的成功上線,支持了公司業(yè)務的快速成長。然而隨著業(yè)務的持續(xù)發(fā)展,該平臺的疲態(tài)也日益凸顯:

  • 難以支持復雜的表單需求(可用的表單組件、數(shù)據(jù)結構、DSL語法不足,且新增成本過高)
  • 平臺代碼極度難以維護
  • 大型表單的性能表現(xiàn)糟糕

不可能三角

以上案例,生動展現(xiàn)了一款低代碼平臺的典型生命周期:

低代碼平臺中的“不可能三角”(不可替代代碼)

  • 前期:平臺能力弱,但業(yè)務也簡單。平臺開始起步。
  • 中期:平臺能力趨于成熟,業(yè)務逐漸變得復雜但仍在平臺能力范圍之內。平臺支撐著業(yè)務快速發(fā)展。
  • 后期:平臺觸達能力上限,部分業(yè)務需求開始超出平臺能力。

而此類平臺之所以會有如此表現(xiàn),根本癥結在于其發(fā)展受到了“低代碼”天然自帶的一組矛盾的掣肘,該矛盾可以用不可能三角的形式加以描述:

低代碼平臺中的“不可能三角”(不可替代代碼)

如圖,該三角的三個頂點分別代表了低代碼平臺的三個核心設計目標:

  • Easy to Use – 易于使用
  • Powerful – (功能)強大
  • Low Complexity – 低(系統(tǒng))復雜度

而這三個目標形成了如此一個三角形的結構,意味著在同一低代碼平臺上,他們永遠不可能同時被滿足

若一平臺在易于使用的同時功能強大,則必然擁有較高的系統(tǒng)復雜度。

其中,系統(tǒng)復雜度與維護成本成正比,與系統(tǒng)性能成反比。也即,較高的系統(tǒng)復雜度最終會導致平臺擁有較高的維護成本以及較低的系統(tǒng)性能。

例子:人工智能編程。用戶只需使用自然語言描述需求(易于使用),系統(tǒng)就能生成代碼(功能強大),但該技術至今仍未完全成熟(高系統(tǒng)復雜度)。

若一平臺易于使用的同時保持低系統(tǒng)復雜度,則必然功能受限

例子:Scratch少兒編程。使用圖形化界面編程(易于使用),指令只需經(jīng)過簡單翻譯即可執(zhí)行(低系統(tǒng)復雜度),但功能只能滿足教學目的(功能受限)。

若一平臺功能強大的同時保持低系統(tǒng)復雜度,則必然擁有較高的使用成本

例子:通用編程語言。圖靈完備理論上可以實現(xiàn)任何功能(功能強大),編譯或解釋為機器指令執(zhí)行(低系統(tǒng)復雜度),但存在較高的專業(yè)門檻(高使用成本)。

出路

正所謂,

軟件工程就是trade-off的藝術

對于低代碼平臺上述的三個目標來說,“我全都要”的結果只能是“全都得不到”,最終勢必會陷入到按下葫蘆浮起瓢的窘境當中。所以,對于任何一款低代碼平臺的設計者來說,做出合理的trade-off都將是所有工作中的重中之重。

那么如何trade-off來破解“不可能三角”呢?需要基于以下2個事實:

事實1:易用性與性能/可維護性不可放棄

通常,一款低代碼產(chǎn)品的宣傳會向我們許諾至少以下兩個承諾:

  1. 低代碼平臺一定會比傳統(tǒng)開發(fā)方式更方便/更快速/更易上手
  2. 低代碼平臺的最終產(chǎn)物一定是可運行的商業(yè)應用

對應到我們的三個核心設計目標上去,很容易看出:

  • 第1條直接要求低代碼平臺必須是易于使用的,尤其是相對于傳統(tǒng)方式要有顯著優(yōu)勢,這是此類平臺的核心競爭力。否則面對同樣需求,客戶為何不選擇更成熟可靠的傳統(tǒng)方案,而要使用低代碼平臺呢?
  • 第2條則要求低代碼平臺以及其產(chǎn)物必須是生產(chǎn)可用的。這要求平臺的產(chǎn)物要具有可接受的性能可維護性,從而要求平臺的復雜度不宜過高。而低性能或不可維護的產(chǎn)品則是斷然無法應用在生產(chǎn)中的。

與之相對的,雖然低代碼平臺也會將“功能強大”作為其一大賣點,但又往往會特意強調其功能具有特定的應用范圍。常見的有針對企業(yè)工作流、報表、ERP等場景設計的低代碼平臺。

綜上,三個設計目標可以被簡短的總結為:

  • 易于使用是,是平臺的意義所在。
  • 低復雜度是,是平臺在生產(chǎn)中可用的基石。
  • 功能強大是,是平臺價值的組成部分。

事實2:單一方案至多只能滿足80%場景

我們可以將一款低代碼平臺所面向的問題域,劃分為封閉問題域開放問題域兩類,它們之間的區(qū)別在于問題空間是否存在確定的邊界。

  • 對于那些專注于解決封閉問題域問題的低代碼方案,經(jīng)過精心設計,是有機會做到使用一個通用方案覆蓋100%域內場景的。此類方案中的佼佼者有SQL之于數(shù)據(jù)查詢領域,可以實現(xiàn)幾乎所有查詢需求。
  • 然而對于一個開放問題域來說,由于不可能窮盡域內所有可能的問題場景,則可以說完全不可能存在有某個單一的“終極方案”,能夠憑一己之力解決域內所有問題。

例如說對于一個To C的低代碼開發(fā)平臺,在UI交互方面,它的問題域就是開放的。

因為終端用戶的交互需求無法窮盡:同樣是展示數(shù)據(jù),既可以用文本、表格,亦可以用圖表、3D模型,甚至可以用AR、VR……

也因此,平臺不可能提供一個滿足100%應用場景的UI構建方案。

所以,我們可以化用“二八定律”對這個問題做個略微粗暴的總結(當然這里的2與8都是虛數(shù)):

對于一開放問題域,任何單一方案至多只能滿足其80%場景。

逃生艙

注:筆者非常喜歡React新版文檔中所使用的“逃生艙”(Escape Hatches)這一比喻,因此在此處也借鑒一番。但需要注意的是,這篇文章中的逃生艙與React中的概念并不完全相同,還需讀者自行鑒別。

聊到這里,其實我們的最佳策略已經(jīng)不言而喻了。如上所述,已知:

  • 事實1:易用性與性能/可維護性不可放棄
  • 事實2:單一方案至多只能滿足80%場景

顯而易見,對于平臺設計者來說,他們應該將絕大部分精力投入到服務好平臺最擅長的那80%業(yè)務場景當中去,竭盡全力在優(yōu)勢領域中做到盡善盡美。

至于剩余的20%邊緣場景,在某些時候,直接放棄或許也是一種可以接受的選項。

當然,對于那些富有野心的平臺來說,這恐怕難以接受。那么此時的最佳策略便是本節(jié)的標題所指:在平臺設計之初,設計者就應該考慮到為將來某些高級使用者提供一個完善的“逃生艙”機制。

這里的“逃生艙”指的是一種向平臺使用者暴露底層能力的機制。它可以是一組低級API,也可以是一批可供二開擴展的集成點,甚至也可以是一套進行定制開發(fā)的解決方案??傊瑸榱藵M足從過去至將來100%的業(yè)務需求,平臺必須允許用戶在有必要的時候進行“抽象降級”,有機會乘坐逃生艙從平臺規(guī)定的條條框框之中逃離。

這樣的設計思想其實在軟件工程領域相當常見,譬如plugin API之于webpack、unsafe之于rust、指針之于C#等等……只不過由于低代碼平臺本身業(yè)務的復雜性,設計出一套優(yōu)雅的“逃生艙”機制并不容易,因此設計者在平臺設計的早期就必須考慮這個問題。

當前我們團隊遇到的問題,就是由于平臺早期缺乏良好的“逃生艙”設計,導致了面對超出平臺能力的新需求時無從下手:

  • 若在原有架構上修修補補——復雜度爆炸
  • 若把架構推倒重來——工期爆炸
  • 若拒絕支持新需求——PM爆炸

可以用一個詞來形容——積重難返。

小結

如上,筆者將本人在低代碼平臺上遇到的困難與思考進行了些淺顯總結,斗膽試圖借此來發(fā)現(xiàn)一點架構設計的普遍規(guī)律,慚愧慚愧……

文章最后,再試著簡單總結一些由本文觀點得出的建議。

對于平臺使用者

對于使用者來說,最大的啟示是在技術選型的階段最好留個心眼,切勿輕信了平臺銷售對其產(chǎn)品功能的吹噓。尤其是如果有人膽敢宣揚他的平臺無所不能,今天開發(fā)明天上線后天解雇程序員云云,那你可得小心了。

正如前文所言,任何低代碼產(chǎn)品的出發(fā)點都是為了降低用戶的使用成本,所以如果一個平臺即承諾了易用性,又承諾了功能性,那么代價是什么?

經(jīng)驗來說,反倒是專注于一個特定領域的平臺供應商往往更加務實,也有更大概率做出更成熟的產(chǎn)品。

對于平臺設計者

對于設計者來說,最大的挑戰(zhàn)是在如上不可能三角中取得平衡。對于不同類型的系統(tǒng)設計取向自然也不同,但對于低代碼平臺這一品類來說,大部分情況下,易用性和系統(tǒng)復雜度還是比功能性重要的多。

因此如果你的產(chǎn)品也具有類似的價值取向的話,那么作為架構設計者,盡早地規(guī)劃“逃生艙”的設計和落實才是負責任的做法。

版權聲明:本文內容由互聯(lián)網(wǎng)用戶自發(fā)貢獻,該文觀點僅代表作者本人。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如發(fā)現(xiàn)本站有涉嫌抄襲侵權/違法違規(guī)的內容, 請發(fā)送郵件至 舉報,一經(jīng)查實,本站將立刻刪除。

(0)
上一篇 2024年5月16日 上午11:44
下一篇 2024年5月16日 上午11:56

相關推薦

  • 醫(yī)學課題考核指標怎么寫

    醫(yī)學課題考核指標怎么寫 在醫(yī)學研究中,考核指標是非常重要的一部分。它們可以幫助研究人員確定研究的成功與否,并且可以幫助研究人員評估研究成果的質量和實用性。因此,對于醫(yī)學課題的考核指…

    科研百科 2024年10月31日
    60
  • 如何在網(wǎng)上查科研項目

    在網(wǎng)上查科研項目 隨著科技的不斷進步,在網(wǎng)上查找科研項目已經(jīng)成為了一項非常便捷的任務?,F(xiàn)在,我們可以通過各種搜索引擎(如Google、Bing、百度等)來查找科研項目。本文將介紹如…

    科研百科 2025年5月7日
    3
  • 如何去找科研項目

    如何去找科研項目 隨著科技的不斷進步,科研項目也在不斷發(fā)展。想要找到科研項目,可以有以下幾種方法: 1. 學術搜索引擎:學術搜索引擎如Google Scholar、百度學術等,可以…

    科研百科 2025年2月10日
    13
  • 關于彩票分析工具的便捷性對比

    前段時間小陸重新整理了彩票統(tǒng)計的SQL語句,當時就萌生了開發(fā)一套彩票數(shù)據(jù)分析系統(tǒng)的想法,而且后續(xù)也為之付出了行動。不過,現(xiàn)在在開發(fā)的過程中反而有點糾結了。下面來說一下是怎么回事吧,…

    科研百科 2024年7月9日
    38
  • 數(shù)據(jù)應用迎新變化、華為數(shù)據(jù)存儲新平臺、新能力助伙伴獲新價值

    隨著數(shù)字化應用的發(fā)展,越來越多的企業(yè)管理者意識到了數(shù)據(jù)的價值,將其比喻為新時代的“石油”。猶如石油驅動工業(yè)化時代的發(fā)展,數(shù)據(jù)也逐漸成為驅動信息與智能化時代的重要資源,數(shù)據(jù)的存儲和處…

    2022年9月20日
    511
  • 第三方物流企業(yè)客戶關系管理

    客戶關系管理在第三方物流企業(yè)中的重要性 客戶關系管理(CRM)是一個非常重要的概念,它是指企業(yè)通過收集、分析和利用客戶數(shù)據(jù),來提升客戶滿意度、增加銷售額、降低客戶流失率等,從而取得…

    科研百科 2025年1月11日
    3
  • 科研項目調研的意義

    科研項目調研的意義 科研項目調研是科學研究過程中至關重要的一環(huán),其意義不僅僅在于推動科學研究的進展,更是對于推動社會的進步和發(fā)展有著重要的意義。 科研項目調研可以幫助我們更好地了解…

    科研百科 2025年3月17日
    5
  • 宜昌城市大腦

    宜昌城市大腦,是指宜昌市在信息技術和人工智能領域的一次大膽嘗試。作為宜昌市重要的戰(zhàn)略目標之一,它旨在建立一個集信息技術、人工智能、物聯(lián)網(wǎng)、大數(shù)據(jù)等多種技術于一體的城市大腦,為城市的…

    科研百科 2024年10月9日
    8
  • 肅南:馬蹄鄉(xiāng)黨建引領“三議”結合,鄉(xiāng)村治理聚勢賦能(黨建引領三基融合助推美麗鄉(xiāng)村建設)

    “不管大事小事,群眾的事就是天大的事”。近年來,馬蹄藏族鄉(xiāng)堅持以解決村級發(fā)展的重點事、群眾的心頭事、矛盾糾紛的“頭疼”事為重點,依托黨建聯(lián)盟、鄰里小院、“專字號”頭雁調解室,推行“…

    科研百科 2024年5月31日
    47
  • 銀行項目管理工具

    銀行項目管理工具 銀行作為金融機構,其項目管理也是一個重要的方面。隨著業(yè)務的發(fā)展,銀行需要面對越來越多的項目和任務,傳統(tǒng)的手動管理方式已經(jīng)無法滿足現(xiàn)代項目管理的需求。因此,銀行需要…

    科研百科 2024年7月24日
    6
亚洲人妻精品偷拍视频| 日本 欧美 国产精品| 久久精品视黄片| xx艹逼网站视频免费| 国产真实乱| 91AV精品激情网| 天天干天天日天天射天天爱| 一级a大片网站| 欧美中文字幕日韩一区| 精品国内久久| 欧美电影在线日本视频在线| 韩日无码一区二区三区| 淫乱色亚洲| 久久国产三级的| 国产精品综合色情在线| 国产超碰天天摸天天爽天天添| 天天日天天弄天天操i| 伊人大香蕉导航| 日韩三区福利在线| 久久视频中文| 啪啪啪不卡高清| 韩国毛片一区二区| 欧美黑粗大硬| 亚洲第一无码成人网站在线观看视频| 365更新精品在线香蕉| 久久桃色综合| 三级精品视频97| 操国产老太太逼视频| 亚洲人成色网站在线| 日韩色综合天天干| 日本一区电影少妇| 精品久久93| 高清无码中文一区二区| 亚韩三区在线| 天天色天天色91| 欧美草草限制第一影院| 精品久久久久久中字幕无码一码奶水 | 国产欧美做爱网站| 亚洲精品一品射精| 日韩内射久久久久| 亚洲精品色拍|