飛速創(chuàng)軟 -“無代碼”并不是“低代碼”的進(jìn)階版(飛速創(chuàng)新官網(wǎng))
在同客戶和業(yè)界人士探討 “ 更高效率的軟件開發(fā)方式 ” 時(shí),發(fā)現(xiàn)大多數(shù)人并不清楚 “ 低代碼 ”和 “ 無代碼 ” 之間的區(qū)別。
低代碼和無代碼開發(fā)平臺都提供了無需編寫代碼即可開發(fā)軟件應(yīng)用程序的能力,而且廠商都在突出 “ 高生產(chǎn)率 ” 這一賣點(diǎn)來爭奪市場,甚至有無代碼廠商宣稱 “ 無代碼 ” 是 “ 低代碼 ” 的進(jìn)化版。事實(shí)真的如此嗎?
當(dāng)充分了解這兩種技術(shù)后,就會發(fā)現(xiàn)無代碼和低代碼對于使用者來說是完全不同的技術(shù)方案。無代碼專注于簡單場景,而低代碼則憑借擴(kuò)展性和集成能力的優(yōu)勢,能夠承載企業(yè)級核心業(yè)務(wù)。弄清楚這個(gè)兩個(gè)概念,并理解兩個(gè)概念中每個(gè)概念的真正含義及應(yīng)用場景,對尋求提升軟件開發(fā)效率的公司或企業(yè)IT部門來說至關(guān)重要。
看起來很像
低代碼和無代碼開發(fā)平臺都提供了無需編寫代碼即可開發(fā)軟件應(yīng)用程序的方法,這點(diǎn)讓兩者看起來很相似。
(圖片來源于:網(wǎng)絡(luò))
面對絕大多數(shù)應(yīng)用場景,兩者都不需要開發(fā)人員掌握傳統(tǒng)編程語言的任何知識,而是直接提供了可視化的開發(fā)方法。
開發(fā)者從屏幕上選擇所需的功能組件,并將其拖拽到可視化流程里的方式完成應(yīng)用開發(fā)。這種可視化方法大幅拉低了軟件開發(fā)的技術(shù)門檻,讓普通IT人員,甚至業(yè)務(wù)人員都可以成為開發(fā)者,直接開發(fā)并交付應(yīng)用程序。這就是它們之間的相同之處。
但實(shí)際上大有不同
雖然低代碼和無代碼都是在可視化的開發(fā)應(yīng)用系統(tǒng),但是在系統(tǒng)規(guī)模和應(yīng)用行業(yè)上有根本的區(qū)別。
對于只希望解決簡單功能的業(yè)務(wù)的用戶而言,無代碼應(yīng)用程序開發(fā)平臺可能非常有用。無代碼平臺是簡單的工具,非常適合構(gòu)建針對特定場景的小型應(yīng)用程序,如問卷調(diào)查等。
(圖片來源于:網(wǎng)絡(luò))
但是大多數(shù)無代碼工具的問題在于,在其上開發(fā)的應(yīng)用程序經(jīng)常無法很好地?cái)U(kuò)展,并且集成能力非常有限。
那是因?yàn)橄啾扔诘痛a,無代碼平臺為了降低復(fù)雜度,沒有考慮更廣泛的企業(yè)體系結(jié)構(gòu),并且大多數(shù)無代碼平臺上可使用的集成工具往往很有限。因?yàn)闊o代碼的這些局限,在您將應(yīng)用要擴(kuò)展到企業(yè)級,甚至承擔(dān)企業(yè)核心業(yè)務(wù)場景時(shí),很可能會遭遇下列挑戰(zhàn):
系統(tǒng)架構(gòu):由于開發(fā)者對企業(yè)應(yīng)用的體系結(jié)構(gòu)缺乏經(jīng)驗(yàn),隨意追加應(yīng)用程序會讓企業(yè)IT體系結(jié)構(gòu)的風(fēng)險(xiǎn)增加。更麻煩的是,大多數(shù)無代碼平臺都需要部署到公有云,不能靈活地部署到私有云或本地,這對于很多企業(yè)場景,尤其是中大型企業(yè)的核心業(yè)務(wù)場景來說,是很難被接受的。
可擴(kuò)展性:因?yàn)闊o代碼平臺傾向于運(yùn)營效率,所以它們不具備關(guān)注用戶體驗(yàn)的能力,并且無法連接到已有系統(tǒng),還有不支持同第三方系統(tǒng)或本地系統(tǒng)集成的問題。
集成:由于使用無代碼工具構(gòu)建的應(yīng)用程序具有獨(dú)立性。如何將該應(yīng)用生成的數(shù)據(jù)與其他系統(tǒng)的數(shù)據(jù)匯總到一起,就成為了一個(gè)普遍的挑戰(zhàn)。這種現(xiàn)象被稱為“數(shù)據(jù)孤島”,是企業(yè)信息化中最難解決的頑癥之一。
(圖片來源于:網(wǎng)絡(luò))
相比之下,低代碼平臺則可以很好幫你解決這些問題。低代碼平臺往往可以同主流技術(shù)保持同步,它們提供靈活的體系結(jié)構(gòu),支持外部數(shù)據(jù)庫,提供開放的API擴(kuò)展平臺等技術(shù)能力。
正是這些特性,讓低代碼完全具備支撐企業(yè)核心業(yè)務(wù)的能力,同時(shí)還能與企業(yè)其他系統(tǒng)(如ERP、MES等)深度集成。此外,以飛速創(chuàng)軟為代表的部分低代碼開發(fā)平臺的部署方式更加靈活,同時(shí)支持私有化部署和本地部署,特別適合國內(nèi)企業(yè)對于“系統(tǒng)可控性”的要求。
(圖片來源于:飛速創(chuàng)軟)
確定哪種工具適合業(yè)務(wù)
無須諱言,無論決定采用哪種平臺企業(yè)都要面臨挑戰(zhàn)。無代碼開發(fā)平臺被業(yè)界認(rèn)為過于簡單以致無法支持復(fù)雜的應(yīng)用場景;對于非專業(yè)開發(fā)人員而言低代碼開發(fā)平臺則過于復(fù)雜。
如果選擇了“無代碼”,業(yè)務(wù)人員確實(shí)具備了開發(fā)應(yīng)用的能力,但功能需求超出了業(yè)務(wù)開發(fā)人員的能力,或者擴(kuò)展性、部署方式等非功能需求無法滿足企業(yè)的要求,要怎么辦?多數(shù)情況下,企業(yè)決策者不能接受只滿足了他99%的需求,他們需要你100%的完成這個(gè)項(xiàng)目。
如果選擇了“低代碼”,是否有足夠的IT人員(非專業(yè)軟件開發(fā)人員)來承擔(dān)應(yīng)用開發(fā)工作?如果沒有的話,恐怕只能依賴現(xiàn)有的專業(yè)開發(fā)者。那么評估傳統(tǒng)開發(fā)方式與低代碼開發(fā)方式的成本差異,再對比學(xué)習(xí)低代碼開發(fā)平臺的成本,才能做出一個(gè)客觀的決策。雖然絕大多數(shù)場景下,選擇低代碼都會大幅降低整體成本。
(圖片來源于:飛速創(chuàng)軟)
不要忽略協(xié)同開發(fā)能力
在決定采用哪種方法時(shí),需要考慮的因素顯然不僅限于技術(shù)本身。與其他所有的軟件開發(fā)技術(shù)一樣,必須考慮可交付的成果與客戶的實(shí)際需求的滿足程度。尤其是面對復(fù)雜的、承載關(guān)鍵業(yè)務(wù)的系統(tǒng),只有通過在應(yīng)用程序開發(fā)過程中密切協(xié)作,提高效率,才能順利交付更大更復(fù)雜的企業(yè)應(yīng)用。
所以,在考慮選擇低代碼或無代碼解決方案,對比各開發(fā)平臺的差異時(shí),我們應(yīng)該考慮以下問題:
1、該解決方案如何推廣,如何促進(jìn)業(yè)務(wù)功能開發(fā),如何提高開發(fā)人員間的溝通與協(xié)作?
2、解決方案是否包含了協(xié)作開發(fā)能力,包括但不限于代碼共享、版本管理、分支管理等常用功能?
3、高級開發(fā)人員(比如專業(yè)開發(fā)者)能不能使用該工具規(guī)定開發(fā)規(guī)范和將復(fù)雜業(yè)務(wù)邏輯打包后供給IT人員或業(yè)務(wù)人員重復(fù)調(diào)用?
(圖片來源于:網(wǎng)絡(luò))
無代碼和低代碼都是能夠幫助開發(fā)者快速構(gòu)建企業(yè)應(yīng)用的先進(jìn)工具。但 “無代碼”并不是“低代碼”的進(jìn)化版。受限于擴(kuò)展性和系統(tǒng)集成能力,無代碼專注于簡單場景,而低代碼則可以承載企業(yè)核心業(yè)務(wù)需求。當(dāng)您需要在無代碼和低代碼中做出選擇時(shí),除了應(yīng)用場景外,還需要充分考慮各平臺的部署方式、協(xié)作開發(fā)能力等差異,找出適合自己的團(tuán)隊(duì)與客戶需求的方案。