如今,恐怕沒有比IT更愛創(chuàng)造新概念的行業(yè)了。一方面,源自于信息技術(shù)的高速發(fā)展,創(chuàng)新層出不窮;另一方面,可能是源自銷售的需要,客戶總有些獵奇的心理,先不論產(chǎn)品是否充分滿足客戶的需求,至少新的概念先從心理層面撥弄客戶的心扉。
那么,低代碼開發(fā)是真正的技術(shù)創(chuàng)新還是炒冷飯呢?
01
什么是低代碼開發(fā)?
實(shí)際上, 低代碼開發(fā)并不是什么新鮮事。20多年前的VisualBasic 在上世紀(jì)90年代就是一個(gè)低代碼工具,更久遠(yuǎn)一點(diǎn),可以追溯到case tool 等代碼生成工具。
低代碼開發(fā)可以幫助人們以最少的代碼快速創(chuàng)建和部署應(yīng)用程序,降低開發(fā)和部署應(yīng)用程序的總體成本,并實(shí)現(xiàn)快速開發(fā)。此外,可以為非技術(shù)用戶提供更友好的用戶界面,使他們更容易創(chuàng)建和修改應(yīng)用程序。也就是說,允許開發(fā)者和業(yè)務(wù)人員通過圖形用戶界面創(chuàng)建業(yè)務(wù)應(yīng)用軟件,而不是傳統(tǒng)的計(jì)算機(jī)編程。通過拖放 UI 組件,可視化地構(gòu)建應(yīng)用程序取代了編碼。項(xiàng)目的所有組件,例如前端和后端代碼和配置文件,都是基于最佳實(shí)踐自動生成的。
其中,低代碼開發(fā)平臺是關(guān)鍵,通常允許沒有編碼技能的業(yè)務(wù)用戶解決自己的問題并優(yōu)化日常操作。這些平臺提供了一個(gè)抽象層,使用戶可以點(diǎn)擊、拖放、配置并最終創(chuàng)建一個(gè)無需編程或少量編程的應(yīng)用程序,零代碼開放本質(zhì)上是低代碼開發(fā)的一個(gè)子集。

典型的低代碼開發(fā)平臺包括以下組成部分:
-
可視化 IDE ——這是一個(gè)用于定義應(yīng)用程序的數(shù)據(jù)模型和工作流的可視化工具
-
后端組件或服務(wù)的連接器——用于管理數(shù)據(jù)的存儲和檢索
-
應(yīng)用程序生命周期管理器-這包括用于在階段和生產(chǎn)環(huán)境中構(gòu)建、部署和管理應(yīng)用程序的工具
低代碼平臺的圖形用戶界面可以自動化開發(fā)過程中的元素,消除對傳統(tǒng)編程方法的依賴,提高敏捷性、靈活性和成本效率,同時(shí)提供具有連續(xù)性的業(yè)務(wù)價(jià)值。這些平臺減少了開發(fā)軟件所需的時(shí)間,因此商業(yè)應(yīng)用程序可以更快地交付,組織中更廣泛的人員可以為應(yīng)用程序的開發(fā)做出貢獻(xiàn),即使是全職的專業(yè)開發(fā)人員也可以與業(yè)務(wù)人員一起使用這些低代碼工具。
02
為什么出現(xiàn)低代碼平臺?
“開源節(jié)流”一直是企業(yè)的主旋律,企業(yè)需要敏捷、適應(yīng)性和競爭力來在這個(gè)數(shù)字時(shí)代保持領(lǐng)先地位。為了交付業(yè)務(wù)價(jià)值,保持市場領(lǐng)先地位,需要提供簡單、直觀和更好的客戶解決方案。對于沉迷于傳統(tǒng)軟件開發(fā)方法的組織來說,這可能是一個(gè)挑戰(zhàn)。低代碼平臺可以通過簡化工作流程和加速組織中的自動化計(jì)劃來滿足這一需求。
近些年的疫情促使企業(yè)需要實(shí)現(xiàn)流程自動化,而低代碼平臺強(qiáng)調(diào)了這一數(shù)字化轉(zhuǎn)型的必要性——
低代碼開發(fā)平臺為企業(yè)提供了一種開發(fā)和部署應(yīng)用程序的方法,不雇傭開發(fā)人員的企業(yè)仍然可以使用低代碼平臺創(chuàng)建應(yīng)用程序。軟件行業(yè),尤其是互聯(lián)網(wǎng)的開發(fā)工程師成本較高,低代碼平臺允許沒有編碼經(jīng)驗(yàn)的技術(shù)和商業(yè)專業(yè)人士開發(fā)應(yīng)用程序,并可能填補(bǔ)組織中的人才缺口。
另外,對于SaaS 服務(wù)的提供者而言,低代碼或許可以提供產(chǎn)品的附加價(jià)值。
Gartner 曾預(yù)測到2024年65% 的應(yīng)用開發(fā)功能將在低代碼平臺上執(zhí)行,也預(yù)測到那時(shí)66% 的大公司將使用低代碼軟件,但是, 老碼農(nóng)并不茍同。
03
如何從使用低代碼平臺中獲益?
低代碼平臺可以幫助企業(yè)填補(bǔ)開發(fā)人員的人才缺口,允許業(yè)務(wù)和 IT 專業(yè)人員在沒有開發(fā)經(jīng)驗(yàn)的情況下構(gòu)建應(yīng)用程序,還可以通過減少開發(fā)時(shí)間來提高開發(fā)人員的工作效率。
通過低代碼平臺,開發(fā)者放棄了一些控制權(quán),固化了一些指令,從而獲得了更高的生產(chǎn)力水平。它還讓開發(fā)變得更容易為更多人所接受,這些人可能沒編程技能,但可以使用低代碼工具來構(gòu)建應(yīng)用程序。
在一項(xiàng)調(diào)查中顯示,68% 的人說他們創(chuàng)建無代碼應(yīng)用的主要原因是因?yàn)榈痛a解決方案更適合他們組織的需要,61% 的人說這是因?yàn)樗麄兛梢噪S著工作負(fù)載和需求的變化更快地改變應(yīng)用。調(diào)查發(fā)現(xiàn),在使用無代碼平臺方面,安全問題和高管認(rèn)同度被列為最受關(guān)注的問題,74% 的 IT 專業(yè)人士表示,他們認(rèn)為低代碼解決方案是快速開發(fā)應(yīng)用程序的關(guān)鍵。
低代碼平臺也有助于彌合業(yè)務(wù)和 IT 之間的鴻溝,因?yàn)樗鼈兪箻I(yè)務(wù)部門能夠按照自己的需要?jiǎng)?chuàng)建應(yīng)用程序,而 技術(shù)團(tuán)隊(duì)能夠在幕后進(jìn)行任何必要的編碼修復(fù),而業(yè)務(wù)部門不會注意到應(yīng)用程序運(yùn)行方式的變化。低代碼平臺還可以為企業(yè)提供更快速的應(yīng)用程序交付,幫助實(shí)現(xiàn) DevOps 的持續(xù)交付目標(biāo)。
如今,數(shù)字化的需求是如此之高,在某些方面,低代碼可能是某些企業(yè)能夠跟上節(jié)奏的唯一方式。
04
低代碼平臺的局限性是什么?
盡管許多公司使用的日常應(yīng)用可以使用低代碼平臺構(gòu)建,但這些工具也有局限性。如果不需要開發(fā)和運(yùn)營人員,企業(yè)也不可能總是能夠完全構(gòu)建和管理應(yīng)用程序。在概念驗(yàn)證階段,低代碼平臺可以成為一個(gè)強(qiáng)大的工具,并可以簡化一些 UI/UX 問題,以使應(yīng)用程序運(yùn)行得更快,但仍然需要開發(fā)人員來定制項(xiàng)目,創(chuàng)建后端 API,并管理基礎(chǔ)設(shè)施部署。
低代碼平臺的局限性意味著仍然需要熟練的軟件開發(fā)人員,隨著低代碼開發(fā)平臺在整個(gè)企業(yè)中的激增,這種轉(zhuǎn)變的結(jié)果是一種新的環(huán)境,在這種環(huán)境中,開發(fā)人員處理軟件開發(fā)的技術(shù)方面,而使用軟件的部門正在根據(jù)自己的愿望設(shè)計(jì) UI。
05
什么是低代碼微服務(wù)?
如果說早期的低代碼側(cè)重于某一軟件應(yīng)用可視化編程的話, 那么現(xiàn)在的低代碼平臺與過去的區(qū)別在生成應(yīng)用軟件的形式, 即面向的更多是分布式系統(tǒng), 尤其是微服務(wù)系統(tǒng)。
微服務(wù)將開發(fā)人員從技術(shù)堆棧、單體結(jié)構(gòu)等約束中解放出來。低代碼微服務(wù)通過增加智能性進(jìn)一步加強(qiáng)了這一點(diǎn)。只要應(yīng)用程序簡單、干凈、集成點(diǎn)少,低代碼平臺可以大大節(jié)省基于微服務(wù)的應(yīng)用程序的開發(fā)時(shí)間。如果基于微服務(wù)的應(yīng)用程序不需要與其他數(shù)據(jù)庫集成,那么就更簡單一些了。
但是,在開發(fā)基于微服務(wù)的大型應(yīng)用程序時(shí),面向微服務(wù)的低代碼方法并不理想。原因在于應(yīng)用程序可能需要在實(shí)時(shí)性、數(shù)據(jù)庫集成、消息傳遞等需要自定義的特性中進(jìn)行數(shù)據(jù)和信息交換。因此,測試基于低代碼的微服務(wù)應(yīng)用是另一個(gè)挑戰(zhàn)。
低代碼平臺為微服務(wù)的展開提供了一些好處,例如:
-
多級可重用性: 低代碼微服務(wù)在微服務(wù)體系結(jié)構(gòu)提供的代碼可重用性之上提供了更多的層。開發(fā)人員可以搜索和使用智能庫,并從應(yīng)用程序功能列表中進(jìn)行選擇,這些功能可以通過簡單的拖放來添加。
-
快速上市時(shí)間: 低代碼可以為您的應(yīng)用程序提供最低的上市時(shí)間,這要?dú)w功于多級可重用性。平臺的自動化能力使應(yīng)用程序能夠快速構(gòu)建,一個(gè)可能花費(fèi)大量時(shí)間構(gòu)建的微服務(wù)系統(tǒng)現(xiàn)在可以隨時(shí)創(chuàng)建。
-
改善客戶體驗(yàn)-低代碼開發(fā)促進(jìn)更好的客戶體驗(yàn)。
普通微服務(wù)在可以處理的數(shù)據(jù)和提供的結(jié)果方面受到相對的限制。另一方面,低代碼平臺提供了更加專業(yè)化的微服務(wù),可以根據(jù)需求量身定做。
06
企業(yè)級應(yīng)用使用低代碼平臺的利弊是什么?
盡管低代碼平臺很強(qiáng)大,但目前還不適合構(gòu)建復(fù)雜的企業(yè)應(yīng)用,這意味著開發(fā)人員面臨一個(gè)選擇。面對企業(yè)級應(yīng)用,使用低代碼平臺進(jìn)行軟件開發(fā)的好處包括:
-
更快的上市時(shí)間:實(shí)現(xiàn)低代碼開發(fā)最明顯的好處是節(jié)省時(shí)間。低代碼開發(fā)平臺能夠快速入門,并且不需要從頭開始編寫代碼就能生成功能性的原型,可以使用預(yù)先創(chuàng)建的模板快速創(chuàng)建新的應(yīng)用程序。
-
減少技術(shù)債務(wù):低代碼開發(fā)使企業(yè)能夠減少浪費(fèi),簡化和縮短開發(fā),并加速部署,從而避免技術(shù)債務(wù)。
-
易于更新-低代碼開發(fā)使得更改應(yīng)用程序和調(diào)整它們以滿足新的需求變得簡單。低代碼開發(fā)避免了復(fù)雜的編碼需求,從而允許在需要時(shí)快速更新。
-
更高的生產(chǎn)力:由于低代碼開發(fā)可以在更短的時(shí)間內(nèi)生成更多的應(yīng)用程序,因此它促進(jìn)了快速開發(fā)和發(fā)布周期。
-
降低成本:低代碼軟件開發(fā)為組織提供了一種更廉價(jià)、更直接的方法來設(shè)計(jì)符合其特定需求的業(yè)務(wù)流程和工作流。它使企業(yè)減少了對額外開發(fā)人員的需求,從而降低了開支。
-
增加敏捷性:低代碼開發(fā)意味著快速和簡單的更新。大多數(shù)應(yīng)用程序都有預(yù)先構(gòu)建的用戶界面,允許您基于現(xiàn)有邏輯創(chuàng)建工作流和業(yè)務(wù)模型。
同樣,使用低代碼平臺進(jìn)行軟件開發(fā)的缺點(diǎn)也是明顯的:
-
缺乏自定義——盡管低代碼平臺的預(yù)構(gòu)建模塊使用起來非常方便,但是無法使用它們來自定義應(yīng)用程序。即便可以定制低代碼平臺,但只能在有限的范圍內(nèi)定制。
-
有限的集成——由于低代碼平臺固有的限制,有時(shí)將它們與特定的系統(tǒng)集成是不可行的。
-
供應(yīng)商鎖定——有一些供應(yīng)商生產(chǎn)干凈、標(biāo)準(zhǔn)化的代碼,使得在平臺中使用應(yīng)用程序變得簡單。但是,許多專有系統(tǒng)要么阻止代碼遷移,要么創(chuàng)建不可讀、不可重用的代碼。這使得將應(yīng)用程序移植到另一個(gè)平臺變得困難,從而導(dǎo)致供應(yīng)商被鎖定。
-
安全性和可靠性——使用低代碼平臺,意味著不得不在很大程度上依賴第三方應(yīng)用程序和服務(wù)。由于開發(fā)人員沒有完全的控制權(quán),它可能會帶來安全風(fēng)險(xiǎn)。低代碼平臺的內(nèi)置安全性可能是不夠的。
07
低代碼平臺的市場是什么樣的?
Garnter的預(yù)測顯示,到2025年,低代碼市場規(guī)模將達(dá)到455億美元,年復(fù)合增長率可能達(dá)到22.7% 。據(jù) Forrester 報(bào)道,在2018年的時(shí)候,在低代碼領(lǐng)域已經(jīng)存在大約67家不同的供應(yīng)商,還有幾十家小規(guī)模或區(qū)域性的供應(yīng)商。
報(bào)告指出,在大型供應(yīng)商中,只有 Salesforce 在2017年之前使用了 Force.com 的低代碼平臺。然而從那時(shí)起,戴爾、微軟、甲骨文、 IBM 和 SAP 也加入了這個(gè)市場,領(lǐng)先的低代碼開發(fā)平臺包括 AppSheet、 Oracle、 Nintex、 OutSystems、 Appian、 Quick Base 等。
例如,Appian 是市場上最流行的低代碼解決方案之一。它易于學(xué)習(xí),提供優(yōu)秀的文檔,并且包括大量經(jīng)常更新的現(xiàn)有智能服務(wù)。Mendix 從2005年開始,已經(jīng)有超過4000家公司使用了這個(gè)平臺。使用 Mendix,開發(fā)團(tuán)隊(duì)可以快速構(gòu)建和部署在線門戶網(wǎng)站、自動化工作流、數(shù)字化流程、用于客戶參與的移動應(yīng)用程序,甚至可以更新現(xiàn)有的系統(tǒng)。
Microsoft Power Apps 與其他公司采用低代碼的方式有著根本的不同。其中一個(gè)原因是 Power Apps 已經(jīng)融入了人們?nèi)粘J褂玫奈④洰a(chǎn)品中。因此,使用 Power Platform 構(gòu)建的任何解決方案都可以很容易地分布到公司中每個(gè)人的工作流中。換句話說,如果業(yè)務(wù)依賴于一系列 Microsoft 工具,那么使用 Power Apps 意味著可以定制這些工具,以完美地適應(yīng)各個(gè)團(tuán)隊(duì)的工作流程。Power Apps 不僅專注于 MS 軟件,還可以連接到 SAP、 Oracle 和 Azure Cloud。Power Apps 不僅關(guān)注商業(yè)智能和移動應(yīng)用,還關(guān)注應(yīng)用、面向公眾的網(wǎng)站、機(jī)器人流程自動化、流程分析、聊天機(jī)器人、 BI 儀表板、后端數(shù)據(jù)系統(tǒng)和業(yè)務(wù)邏輯。
在國內(nèi),由于對低代碼平臺的認(rèn)知不同,老碼農(nóng)自己的關(guān)注度也不夠,還沒有找到詳細(xì)的分析報(bào)告。
08
低代碼開發(fā)需要什么?
如果對低代碼開發(fā)感興趣,那么仍然需要人們做一些準(zhǔn)備。首先,需要選擇一個(gè)低代碼的開發(fā)平臺。有許多低代碼平臺可供選擇,在選擇之前,應(yīng)該分析自己的需求并探索所有這些潛在的選擇,以找到滿足需求的選項(xiàng)。
一旦選擇了一個(gè)平臺,就需要學(xué)習(xí)如何使用它,這可能需要一些培訓(xùn)資料或閱讀文檔。最后,還需要一些關(guān)于想要構(gòu)建的內(nèi)容的想法,這樣可以開始“低代碼開發(fā)”了。
例如,如果想做一個(gè)自己專屬的語音應(yīng)用,可以選擇DuerOS Bot Platform(DBP, http://dueros.baidu.com/dbp)作為低代碼平臺,然后根據(jù)自己的創(chuàng)意,就可以開發(fā)應(yīng)用了,具體可以參考《 DuerOS的零編程技能實(shí)現(xiàn) 》。
09
如何開始選擇一個(gè)低代碼的平臺?
由于有許多的供應(yīng)商,企業(yè)可能很難確定從哪里開始選擇過程。Forrester 提供了以下三點(diǎn)建議:
-
決定誰來做這項(xiàng)工作。低代碼平臺往往分為兩個(gè)市場部分: 一部分面向開發(fā)人員,另一部分面向業(yè)務(wù)部門。企業(yè)必須決定需要一個(gè)平臺的哪一方面,以及哪一方面最適合這一目標(biāo)。
-
找出企業(yè)想要交付的用例。每個(gè)工具都提供不同領(lǐng)域的功能,包括工作流和業(yè)務(wù)流程的應(yīng)用,應(yīng)該選擇一個(gè)適合自己項(xiàng)目需要的低代碼平臺。
-
創(chuàng)建一個(gè)包含治理的策略。不管有沒有編碼,構(gòu)建和維護(hù)軟件都很困難。從低代碼平臺獲益最大的企業(yè)是那些制定了戰(zhàn)略的企業(yè),比如一個(gè)組合的管理系統(tǒng),該系統(tǒng)可以幫助員工跟蹤平臺中已經(jīng)構(gòu)建的應(yīng)用程序。
這個(gè)領(lǐng)域的大多數(shù)供應(yīng)商都有“起步階段”的平臺和免費(fèi)增值服務(wù),嘗試這些工具,開發(fā)一個(gè)應(yīng)用程序并解決一個(gè)問題,一個(gè)項(xiàng)目一個(gè)項(xiàng)目的采用這些工具是非常容易的。
10
低代碼平臺的典型開發(fā)用例有哪些?
對于低代碼平臺而言,一些典型的開發(fā)用例如下:
-
概念驗(yàn)證(POC) ——由于低代碼平臺允許更快速地開發(fā)應(yīng)用程序,因此非常適合原型開發(fā)。例如,可以利用低代碼來創(chuàng)建解決業(yè)務(wù)問題的應(yīng)用程序,然后使用傳統(tǒng)的開發(fā)方法開發(fā)應(yīng)用的最終版本。
-
快速應(yīng)用程序開發(fā)——如果項(xiàng)目不是那么復(fù)雜或廣泛,可以利用低代碼平臺快速交付應(yīng)用程序。使用此方法構(gòu)建的應(yīng)用程序可能有約束、風(fēng)險(xiǎn)和限制,但可以以后解再決這些問題。
-
模塊化 Web 應(yīng)用程序——可以利用低代碼的微服務(wù)來構(gòu)建模塊化 Web 應(yīng)用程序,也可以利用低代碼的微服務(wù)來創(chuàng)建一套微服務(wù)應(yīng)用。
-
API 生成——可以利用低代碼API 生成器從現(xiàn)有代碼中自動構(gòu)建 API。
-
容器化——低代碼微服務(wù)也可以在容器內(nèi)運(yùn)行。如果低代碼平臺與 K8S 集成,就可以利用 K8S的容器編排功能。
一句話小結(jié)
隨著組織在削減 IT 預(yù)算的同時(shí)努力跟上數(shù)字化的需求,低代碼平臺的采用將會有所增長。企業(yè)創(chuàng)新和業(yè)務(wù)敏捷性將推動低代碼開發(fā),并不意味著能夠拋棄開發(fā)團(tuán)隊(duì),并不意味著需要更少的代碼知識。充分利用低代碼平臺確實(shí)需要對軟件工程有扎實(shí)的理解,盡管開發(fā)人員可能編寫較少的代碼,但是他們不能對代碼缺乏理解。
繼續(xù)閱讀:
未經(jīng)允許不得轉(zhuǎn)載:RPA中國 | RPA全球生態(tài) | 數(shù)字化勞動力 | RPA新聞 | 推動中國RPA生態(tài)發(fā)展 | 流 > “低代碼”十問
熱門信息
閱讀 (14728)
1 2023第三屆中國RPA+AI開發(fā)者大賽圓滿收官&獲獎(jiǎng)名單公示閱讀 (13753)
2 《Market Insight:中國RPA市場發(fā)展洞察(2022)》報(bào)告正式發(fā)布 | RPA中國閱讀 (13055)
3 「RPA中國杯 · 第五屆RPA極客挑戰(zhàn)賽」成功舉辦及獲獎(jiǎng)名單公示閱讀 (12964)
4 與科技共贏,與產(chǎn)業(yè)共進(jìn),第四屆ISIG中國產(chǎn)業(yè)智能大會成功召開閱讀 (11567)
5 《2022年中國流程挖掘行業(yè)研究報(bào)告》正式發(fā)布 | RPA中國