低代码--低代码开发(LCDP)介绍
低代碼開發(fā)(LCDP)介紹
- 1 介紹
- 1.1 概述
- 1.2 行業(yè)風向
- 1.3 行業(yè)報告
- 1.4 優(yōu)點
- 減少重復編程
- 避免溝通隔閡
- 提升效率
- 1.5 挑戰(zhàn)
- 完全拋棄代碼的代價,就是平臺能力與靈活性受限
- 應用低代碼平臺阻力大
- 技術(shù)局限
- 老舊系統(tǒng)改造困難
- 職業(yè)角色缺失
- 應用者大多是技術(shù)人員
- 有些行業(yè)抵觸低代碼
- 1.6 技術(shù)特點
- 1.7 低代碼平臺分類(from汪源,網(wǎng)易副總裁)
- 模型驅(qū)動
- 可視化開發(fā)
- 表達式語言
- 軟件工程
- 開放集成
- 腳本語言
- 1.8 低代碼平臺設(shè)計難點
- 技術(shù)體系復雜
- 需要應對架構(gòu)與技術(shù)的快速迭代
- 2 發(fā)展歷史
- 2.1 時間軸
- 2.2 事件軸
- Delphi、PowerBuilder(后稱 PB)
- 2015年微軟、谷歌等巨頭入局。
- 2015-2018年期間,國內(nèi)低代碼廠商像簡道云、氚云等也斬露頭角
- 18年,OutSystems融資3.6億美元,西門子宣布6億歐元收購Mendix
- 2018年起,互聯(lián)網(wǎng)巨頭阿里、騰訊、百度紛紛入局
- 2019年起,低代碼成為我國ICT產(chǎn)業(yè)中最明顯的增量市場
- 2021釘釘6.0發(fā)布會再次引燃低代碼市場
- 3 代表平臺
- 3.1 巨頭
- 3.2 垂直領(lǐng)域廠商
- 4 各賽道代表
- 4.1 應用開發(fā)平臺
- 4.2 智能表格
- 4.3 SaaS聚合
- 4.4 IDE+DevOps
- 4.5 DSL開發(fā)框架
- 4.6 組件代碼庫
- 5 應用
- 5.1 ERP
- 5.2 教育
- 5.3 機器人
- 5.4 工業(yè)PLC
- 5.5 物聯(lián)網(wǎng)
- 參考
1 介紹
1.1 概述
- 低代碼開發(fā)平臺(LCDP)是無需編碼(0代碼)或通過少量代碼就可以快速生成應用程序的開發(fā)平臺。通過可視化進行應用程序開發(fā)的方法(參考可視編程語言),使具有不同經(jīng)驗水平的開發(fā)人員可以通過圖形化的用戶界面,使用拖拽組件和模型驅(qū)動的邏輯來創(chuàng)建網(wǎng)頁和移動應用程序。低代碼開發(fā)平臺(LCDP)的正式名稱直到2014年6月才正式確定,整個低代碼開發(fā)領(lǐng)域卻可以追溯到更早前第四代編程語言和快速應用開發(fā)工具。
- LCDP是Low-Code Development Platform的簡寫。
- 低代碼開發(fā)平臺可以通過圖形化拖拽、參數(shù)配置等更高效的方式完成開發(fā)工作。
- 低代碼背后的哲學,是少即是多(Less is More),或者更準確說是多快好省(Do More with Less)。
- 低代碼能解決落后的軟件開發(fā)生產(chǎn)力跟不上人民日益增長的業(yè)務需求的矛盾。尤其面對非標需求。
- 根據(jù)《人月神話》作者Fred Brooks的劃分,軟件開發(fā)的復雜度可以劃分為本質(zhì)復雜度(Essential complexity )和偶然復雜度(Accidental complexity)。前者是解決問題時固有的最小復雜度,跟你用什么樣的工具、經(jīng)驗是否豐富、架構(gòu)好不好等都無關(guān),而后者就是除此之外在實際開發(fā)過程中引入的復雜度。通常來說,本質(zhì)復雜度與業(yè)務要解決的特定問題域強相關(guān),因此這里我把它稱為更好理解的“業(yè)務復雜度”;這部分復雜度不是任何開發(fā)方法或工具能解決的,包括低代碼。而偶然復雜度一般與開發(fā)階段的技術(shù)細節(jié)強相關(guān),因此我也相應把它稱為“技術(shù)復雜度”;而這一部分復雜度,恰好就是低代碼所擅長且適合解決的。
1.2 行業(yè)風向
- 低代碼是微軟 2019 年及以后最大的賭注之一。——微軟 CEO 薩蒂亞·納德拉
- 數(shù)字技術(shù)要服務好實體經(jīng)濟,低代碼是重要趨勢。——阿里云總裁張建鋒
- 低代碼是下一代的變革和提升。——谷歌
1.3 行業(yè)報告
1.4 優(yōu)點
減少重復編程
將重復的部分抽出做出單獨的功能,可以圖形化拖拽等,極大減少重復性代碼開發(fā)。
避免溝通隔閡
甲方提出一大堆業(yè)務流程、數(shù)據(jù)收錄、界面設(shè)計等要求,開發(fā)者理解業(yè)務需求代價很高,并容易埋下不少系統(tǒng)邏輯不自洽、出bug、流程不通等隱患。借助低代碼帶來的簡易操作,圖形顯示,業(yè)務員和甲方能輕松溝通。
- 如PLC快速修改邏輯,讓客戶很快看懂自己的想法實現(xiàn)的輪廓。
- 如協(xié)助機械臂的圖形編程能方便業(yè)務和應用人員給客戶展示產(chǎn)品的應用。
- 如家裝3D軟件快速搭建家裝效果。
- 如剪映快速拼接視頻讓視頻制作隨手完成。
提升效率
可視化、交互化、簡潔的平臺界面,應用開發(fā)者能更高效地實施開發(fā),能快速排查及修復bug。
如協(xié)作機器人的圖形化編程,能仿真同步,快速校驗邏輯。
1.5 挑戰(zhàn)
完全拋棄代碼的代價,就是平臺能力與靈活性受限
一方面,可視化編輯器的表達能力遠不及圖靈完備的通用編程語言,不引入代碼根本沒法實現(xiàn)靈活的定制與擴展(當然,理論上也可以做成Scrach/Blockly那樣的圖形編程語言,但那樣不過是換一種形式在手寫代碼而已)。
另一方面,由于目標受眾是非專業(yè)開發(fā)人員,平臺能支持的操作會更趨于“傻瓜化”,同時也只會透出相對“親民化”的模型和概念,無法支撐強大專業(yè)的底層開發(fā)原語和編程理念。
應用低代碼平臺阻力大
低代碼通過一站式解決方案,提升效率、降低使用門檻,但同時,一站式應用發(fā)布會對一些企業(yè)傳統(tǒng)DevOps流程及規(guī)范形成挑戰(zhàn)。引入低代碼甚至會改變一些企業(yè)的現(xiàn)有工作流,對于大型企業(yè)阻力可能會較大。
技術(shù)局限
當前的低代碼平臺產(chǎn)品形態(tài)多是以Web端產(chǎn)品為主,技術(shù)上受限于瀏覽器性能,交互上需要妥協(xié)于瀏覽器技術(shù),增加了向用戶屏蔽技術(shù)細節(jié)的難度。
老舊系統(tǒng)改造困難
低代碼平臺的優(yōu)勢是作為業(yè)務創(chuàng)新的起點,到應用全生命周期的托管,而對于一些技術(shù)棧老舊、設(shè)計思維老舊、經(jīng)過多年迭代的存量系統(tǒng)的升級迭代問題顯得有些力不從心。
職業(yè)角色缺失
低代碼將會孵化出一個行業(yè)中的全新角色——“業(yè)務信息官BIO”,立足于業(yè)務,有較高的抽象思維能力,能夠?qū)I(yè)務場景工具化。
應用者大多是技術(shù)人員
據(jù)Creatio調(diào)查統(tǒng)計,“只有 6%的低代碼開發(fā)是由業(yè)務人員完成的”,而 OutSystems 的數(shù)據(jù)是 69%的用戶是專業(yè)開發(fā),宜創(chuàng)科技 CEO 宜博也曾說低代碼面臨“懂技術(shù)的看不上,懂業(yè)務的學不會”的尷尬。
以機械臂中圖形編程功能的使用情況來看,業(yè)務人員一般不會,還得由技術(shù)型應用人員來完成,技術(shù)型應用人員能力稍微強些會出現(xiàn)轉(zhuǎn)行成真正的技術(shù)開發(fā)者的現(xiàn)場,我之前工作中就有遇到。
有些行業(yè)抵觸低代碼
大部分企業(yè)對 CRM、ERP 的定制需求還沒那么高,相比用低代碼從頭開發(fā)來說,采用 Saleforce、SAP 這樣的套裝軟件實施,再做一些二次開發(fā)是更合適的選擇。這也解釋了為什么 Saleforce、ServiceNow 這樣的 SaaS 巨頭都有自己的低代碼平臺,而西門子會收購 Mendix。另外 ERP 這樣的企業(yè)軟件實施強依賴咨詢經(jīng)驗,這不是低代碼能解決的,而業(yè)界有經(jīng)驗的咨詢顧問顯然更熟悉 SAP 這樣的產(chǎn)品,也沒有意愿改變。
1.6 技術(shù)特點
低代碼產(chǎn)品大體分為兩個大的發(fā)展方向:針對IT人員的開發(fā)工具型、針對業(yè)務人員的業(yè)務復用型。
表單驅(qū)動模式的低代碼平臺主要以表單的形式運轉(zhuǎn)業(yè)務流程;而aPaaS模式能借助應用平臺打造一個立體空間,讓不同部門的不同業(yè)務線彼此交叉貫通,還可以對接外部的系統(tǒng)。
“低代碼”將多個“系統(tǒng)煙囪”歸整為一個集大成者,更靈活敏捷地創(chuàng)建中臺架構(gòu)。
1.7 低代碼平臺分類(from汪源,網(wǎng)易副總裁)
以區(qū)分度最高的六項來做判斷標準:模型驅(qū)動、可視化開發(fā)、表達式語言、軟件工程、開放集成和腳本語言。
模型驅(qū)動
使用模型驅(qū)動的平臺比如 OutSystems、Mendix 的手冊會有很大一章講怎么做數(shù)據(jù)建模和處理,包括怎么定義實體、實體間關(guān)系、主鍵、唯一性、索引、數(shù)據(jù)怎么訪問、篩選、分組、統(tǒng)計等等,還提供 SQL 或類似擴展。使用表單驅(qū)動的產(chǎn)品則往往手冊第一章就是說明怎么定義各種表單,都是各種和界面相關(guān)的控件,比如單選多選下拉框、文本日期數(shù)字等。
可視化開發(fā)
可視化開發(fā)不是拖拉拽做個界面(這只能叫可視化設(shè)計),而是要拖拉拽寫處理邏輯。看 OutSystems 這類產(chǎn)品的文檔,你會發(fā)現(xiàn)很多編程語言的基本構(gòu)造都有,比如順序 / 分支 / 循環(huán) / continue / break、輸入輸出參數(shù)、局部變量 / 全局變量、struct 和 list、異常等。雖然這些東西都是拖拉拽完成,看上去沒有密密麻麻的一行行代碼來嚇人,但也足以嚇退業(yè)務人員。一下幾張圖都來自于 OutSystems。
表達式語言
表達式語言有些類似 Excel 里的公式,有表達式語言才可以做一些比較復雜的計算。下圖是 OutSystems 的表達式編輯器,大家可以看到有各種操作符,還有很多內(nèi)置函數(shù),比如數(shù)學函數(shù)、字符串處理函數(shù)等。
軟件工程
專業(yè)的低代碼平臺需要提供測試、debug、版本控制等軟件工程支持。低代碼平臺能避免語法bug但是邏輯bug沒法避免,尤其在需求變動時。所以測試、debug、版本控制這些支持也是必不可少的。OutSystems 做的最好,跟它完善的 debug 支持是分不開的。下圖是 OutSystems 的 debug 界面,像專業(yè)的IDE一樣。
開放集成
典型的企業(yè)軟件都是相互依賴和集成的,所以平臺還需要具備能夠調(diào)用外部 API 和開放 API 給別人的能力。
腳本語言
腳本語言就是用 JavaScripts、Python、Java、Lua等做擴展,有的甚至,這些是專業(yè)編程語言,但低代碼平臺會把工程復雜性都封裝好,讓開發(fā)者不需要配置部署環(huán)境,隨手就可以寫代碼,寫完一鍵發(fā)布馬上可以運行。
1.8 低代碼平臺設(shè)計難點
技術(shù)體系復雜
涉及核心的編程語言層面的設(shè)計,比如 DSL、類型系統(tǒng)、泛型等等,還有怎么 diff、debug、undo。
需要應對架構(gòu)與技術(shù)的快速迭代
20 年前是 C / S、.Net,后來流行 B / S、Java,再后來又得搞 App,操作系統(tǒng)從 Windows 變成 Linux,現(xiàn)在又面臨從 SOA 到微服務的轉(zhuǎn)型。
如 OutSystems 到 2016 年的 10.0 版本一口氣推出 Client-Side Logic、Local Storage、異步、Reactive 等功能才算對移動 App 有較好的支持。網(wǎng)易的輕舟團隊在做這些東西時發(fā)現(xiàn)很難。
2 發(fā)展歷史
2.1 時間軸
- 80年代,編程界推出了“結(jié)構(gòu)化語言”,即以功能指令為單位,把相應的代碼封裝好。當程序員要系統(tǒng)運行某個功能時,只需發(fā)出指令,計算機就知道要運行對應的代碼。
- 2000年,“VPL”(可視化編程語言)出現(xiàn)了。就是在第四代編程語言的基礎(chǔ)上,把系統(tǒng)運行的過程以更視覺化方式呈現(xiàn),例如圖標、表格、圖表等形態(tài)。
- 2010-2015年,傳統(tǒng)軟件和SaaS軟件興起,市場規(guī)模穩(wěn)步增長。許多軟件開發(fā)項目,軟件的功能大同小異,重復度很高,導致很大部分的軟件開發(fā)成本都浪費在重復的功能編程上。
- 2014年,Forrester(一家國際知名的技術(shù)和市場調(diào)研公司)敏銳地發(fā)現(xiàn)軟件重復性開發(fā)的問題,并首次提出低代碼和零代碼的概念。
- 2016年,宜搭、iVX等一眾創(chuàng)新團隊開始從“非代碼”或“低代碼”的產(chǎn)品方向探索應用開發(fā)新模式,開啟中國低代碼賽道。
- 2018年,Gartner提出aPaaS(應用平臺即服務)和iPaaS(集成平臺即服務)的概念。
- 2021年,中國市場逐漸形成完整的低代碼、無代碼生態(tài)體系。
2.2 事件軸
低代碼都快爛大街了,還有人在為低代碼吵架
Delphi、PowerBuilder(后稱 PB)
二十年多年前的 Delphi、PowerBuilder(后稱 PB)在當年相比較而言就是低代碼,如今淘汰。
Delphi、PowerBuilder(后稱 PB)相比同時代(PC 時代)的其他技術(shù)(比如MFC)來說易用性好太多。互聯(lián)網(wǎng)時代來了后,軟件架構(gòu)很快就從桌面端的 C / S 變成 Web 端的 B / S,再后來是移動 App。Delphi、PowerBuilder被淘汰。
2015年微軟、谷歌等巨頭入局。
2015-2018年期間,國內(nèi)低代碼廠商像簡道云、氚云等也斬露頭角
18年,OutSystems融資3.6億美元,西門子宣布6億歐元收購Mendix
2018年,軟件開發(fā)行業(yè)發(fā)生了兩件大事。OutSystems融資3.6億美元,成為了估值超過10億美元的獨角獸。隨后西門子宣布6億歐元(約7億美元)收購低代碼應用開發(fā)平臺Mendix。這兩起融資收購案,將低代碼應用開發(fā)這個概念推向了臺前。
2018年起,互聯(lián)網(wǎng)巨頭阿里、騰訊、百度紛紛入局
2019年起,低代碼成為我國ICT產(chǎn)業(yè)中最明顯的增量市場
2021釘釘6.0發(fā)布會再次引燃低代碼市場
3 代表平臺
2021中國低代碼應用平臺廠商Top20榜單。
國外有Salesforce(1999年創(chuàng)立)、OutSystems(2001年創(chuàng)立)、Mendix(2005年創(chuàng)立)、Kony(2007年創(chuàng)立)、Scratch(2008年由MIT創(chuàng)立)、國內(nèi)有iVX(2008年創(chuàng)立)、J2Paas(2017年創(chuàng)立)、起步(2006年創(chuàng)立)、宜搭(2015年創(chuàng)立),YonBuilder(2020年創(chuàng)立) 其中OutSystems在2018年宣布融資3.6億美金,被視為低代碼賽道的獨角獸。
3.1 巨頭
- 微軟:PowerApps
- 亞馬遜:Honeycode
- 谷歌:Appsheet(收購)
- 騰訊:微搭
- 阿里:宜搭
- 華為:AppCube
- 百度:愛速搭
- 字節(jié):黑帕云?(收購)
- 浪潮:?
- 網(wǎng)易:輕舟(類似 Scratch 的積木塊設(shè)計)
3.2 垂直領(lǐng)域廠商
- 天翎
- 輕流
- 奧哲
- 慧友
- ClickPaaS
- 數(shù)睿數(shù)據(jù)
4 各賽道代表
4.1 應用開發(fā)平臺
有宜搭、簡道云、明道云等
作為釘釘生態(tài)產(chǎn)品提供大量行業(yè)標準的應用模板,例如:CRM、財務管理、日常信息收集等,業(yè)務人員可以直接發(fā)布到自己的釘釘工作臺快速投產(chǎn);由于這些應用模板本事是基于豐富的標準化前端組件,業(yè)務人員經(jīng)過簡單文檔學習,通過宜搭提供的可視化拖拉拽工具可以完成一定程度的業(yè)務定制。
4.2 智能表格
有維格表、Treelab、輕流等
這類智能表格型產(chǎn)品,延續(xù)了Excel經(jīng)典的功能及交互邏輯,這類產(chǎn)品上手就沒有什么門檻。智能表格產(chǎn)品能為小公司提供了無縫銜接的操作體驗以及本地Excel所無法比擬的多人協(xié)作、高可用能力,很受小微團隊歡迎。
4.3 SaaS聚合
有Odoo、OpenERP等
Odoo:CRM、ERP領(lǐng)域的SaaS起家,在海外市場風靡一時。Odoo瞄準的是應用級的開箱即用,依托于多年的SaaS交付和生態(tài)社區(qū)發(fā)展,Odoo積累了一大批圍繞企業(yè)管理場景的SaaS應用。在應用市場中,用戶可以選擇所需的管理軟件,如財務、庫存、人事、設(shè)備管理、園區(qū)巡檢等,直接添加到自己的工作臺。相比于購買不同廠家saas產(chǎn)品,企業(yè)獲得了統(tǒng)一的工作臺、數(shù)據(jù)接口、底層協(xié)議,無論是自己依照odoo開源框架還是增加其他應用都有很好的拓展性。
4.4 IDE+DevOps
有Mendix、AppCube、iVX等
iVX提供了一套完整的DevOps解決方案:通過iVX的在線IDE可以通過可視化“拼裝”+配置的方式完成傳統(tǒng)意義上的邏輯代碼編碼;iVX直接打包了底層的IaaS資源,用戶可以按需直接部署上線。
4.5 DSL開發(fā)框架
Uni-app、雙鏈AI軟件云引擎等
Uni-app: 是DCloud一個基于Vue封裝的前端開發(fā)框架,可以達到一次編碼,多端適配。
4.6 組件代碼庫
BrickNext、Vant、ICE等
BrickNext:優(yōu)維科技旗下低代碼開發(fā)工具,提供超過300個前端組件庫,只需要配置yaml文件即可完成前端搭建。不同于element這類的開源前端組件,BrickNext基于前端原生開發(fā)方式,可以提供原子級的自定義能力,同時相較于element的通用型前端組件,BrickNext同時提供優(yōu)維多年交付積累下來的業(yè)務前端組件。支持原子級修改是該產(chǎn)品的最大優(yōu)勢,但同時也是最大的問題,目前前端行業(yè)普遍采用Vue或React開發(fā)框架+element或其他前端組件的方式進行開發(fā),基于原生的開發(fā)方式越來越少。
5 應用
5.1 ERP
Odoo,OpenERP
5.2 教育
- Scratch (全球少兒圖形化編程工具(語言))
- Google的Blockly
5.3 機器人
- 協(xié)助機器人采用圖形編程,如優(yōu)傲、節(jié)卡。
- AMR機器人采用圖形編程,如海康、玖物互通。
5.4 工業(yè)PLC
2018年西門子以6億歐元收購低代碼開發(fā)平臺公司Mendix
5.5 物聯(lián)網(wǎng)
參考
1、有人說低代碼是:幾個牛的人讓一群人失業(yè),真是這樣?
2、低代碼發(fā)展現(xiàn)狀調(diào)研和思考
3、低代碼開發(fā)平臺都有哪些?國內(nèi)外十幾大低代碼開發(fā)平臺——匯總分析
4、簡述國內(nèi)幾大無代碼開發(fā)平臺
5、2021盤點:國內(nèi)外10大低代碼開發(fā)平臺
6、18個最受歡迎的低代碼開發(fā)平臺【開源】
7、低代碼的行業(yè)現(xiàn)狀如何,又將走向何方?
8、機器人流程自動化(RPA)與低代碼流程自動化:應用場景與優(yōu)勢
9、“行業(yè)毒瘤”低代碼
10、什么是低代碼(Low-Code)?
11、萬字長文講透低代碼–汪源(網(wǎng)易副總裁)
12、一文看懂低代碼的現(xiàn)狀、打法、機會和挑戰(zhàn)
13、終于有人把“低代碼”說清楚了!
14、百科–低代碼開發(fā)平臺
15、功能模塊化,邏輯圖形化
16、圖形化編程的理解
17、低代碼都快爛大街了,還有人在為低代碼吵架
18、低代碼無代碼平臺——新的投資賽道
19、硅谷成長攻略–低代碼、無代碼之上手體驗:道阻且長,行則將至
總結(jié)
以上是生活随笔為你收集整理的低代码--低代码开发(LCDP)介绍的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 深度学习领域有哪些瓶颈
- 下一篇: 程序员反思:为什么团队的产出效率那么低下