低代碼開發平臺(Low-Code Development Platform,LCDP)是低代碼開發所需的環境。大多數低代碼平臺都是以云上提供的aPaaS(Application Platform as a Service,應用程序平臺即服務)的形式,不僅用于開發,還用于應用程序的運行,實現了軟件開發到應用的一貫性支持。
所謂低代碼開發,是指盡量無需編寫源代碼,通過使用“圖形用戶界面/GUI”這一可視化操作,在極短的時間內實現系統開發的手法。目前也有通過在Web瀏覽器上搜索所需組件,整合粘貼來制作應用程序的工具。
采用低代碼開發,無需SQL記述就可以制作數據庫,簡化開發工序。在保證一定擴展性的同時,可以有效縮短開發工時。
低代碼開發平臺最初被關注的是用于移動應用的開發。與基礎系統開發相比,手機app開發對速度的要求更高,而且還必須支持多設備。在傳統意義上,要在短時間內推出這樣的移動應用程序是非常困難的,于是,低代碼開發平臺進入了開發人員的視野。
在現今社會,低代碼開發平臺受到關注的最大理由是數字化轉型(DX)。所謂數字化轉型,是指通過人工智能和物聯網等信息技術,將一切事物通過數字數據連接起來,從而從根本上改變企業業務模式。
目前許多企業都在致力于數字化轉型,以求在高速發展的時代中生存下來。企業的IT部門為了推進數字化轉型,必須更密集的進行軟件開發。但是,軟件開發技術人員的數量是遠遠不夠的,僅靠IT部門根本無法滿足軟件開發的需求。
低代碼開發平臺,可以被一般的業務人員、一線工作人員、管理人員等非專業的開發人員使用,無論是否有開發基礎或經驗,都可以經過簡單的培訓進行軟件開發。
低代碼開發最大的優勢是可以縮短開發時間,也就節約了開發成本。低代碼開發平臺提供了大量的通用組件,可以實現一些基礎功能。必要時可以添加自己編寫的代碼,來滿足用戶的功能需求,提供質量穩定的應用程序。
低代碼開發平臺的供應商會提供相應的安全對策,用戶無需擔心程序的安全性以及開發過程中的安全風險。為了實現特殊功能,需要自己編寫代碼時,用戶只需關注自己的編寫部分的安全性即可。
在低代碼開發中,無需編寫復雜的源代碼,就可以在專用的平臺上編寫程序。即使沒有受過編程專業教育的人,也可以在平臺上輕松地進行開發工作。在傳統印象中,程序開發都是由專業的工程師來完成,使用低代碼開發平臺,程序開發的門檻大大降低了。
低代碼開發平臺提供了大量通用的組件,這些可供使用的組件種類多樣。
此外,用戶也可以利用第三方開發的組件。這樣的可再利用形式的組件,支撐著在低代碼開發平臺的視覺建模。
低代碼開發平臺以模型驅動型開發為基礎,任何人都可以通過可視化建模,輕松實現程序開發。
通過拖放可以將所需的流程和組件整合,無需編程即可創建程序。同時,有編程技能的工程師也可以根據需要進行編碼,從而定制組件。
要開發與企業架構相對應的基礎系統,就必須具備與各種系統協作的功能。在這一點上,低代碼開發平臺支持大多數的主流操作系統和數據庫。
另外,通過豐富種類的API,可以和外部系統自由合作。因此,低代碼開發平臺具有可擴展性和開放架構,可支持大企業的基礎系統開發。
完全不使用代碼的無代碼工具,特點是使用預設好的功能來制作簡單的應用程序。對于低代碼開發平臺,用戶也可以通過編碼自由擴展組件的功能。
低代碼開發平臺可以根據客戶各自的需求,進行各種各樣的定制,即使是復雜的大規模系統開發也能應對。
目前提供的低代碼開發平臺大部分采用的是云服務aPaaS的形式。
因此,低代碼開發平臺并非單純的應用開發工具,從與數據庫的自動連接、測試、正式啟動、進一步運行管理、變更管理等開發工序到實際運用工序,搭載了支持整個軟件生命周期的功能。
與低代碼開發平臺對應的是無代碼開發平臺(No-Code Development Platform, NCDP)。無代碼顧名思義,就是不以編寫代碼為前提的開發方法。
低編碼和無編碼在某種程度上非常相似。前述的可視化建模、可再利用的通用性組件、生命周期管理等低代碼開發平臺的特征也適用于無代碼開發平臺。
無代碼開發平臺同樣適用于專業的開發者和無基礎開發者,提供了能夠在更短的時間內輕松發布應用的環境。無需通過編碼進行編程,通過PaaS平臺提供,可以在不構建操作環境的情況下立即運行。
乍一看,無代碼開發平臺只是從低代碼開發平臺中去掉了編寫代碼的要素。但實際上它們是非常不同的。
首先,無代碼開發平臺不能通過編寫代碼來擴展或定制功能。因此,無代碼開發平臺目標是通過預先準備好的組件和API,實現功能范圍內的相對簡單的程序開發。不需要專業開發人員進行系統設計和數據庫設計,經過簡單的功能設計后立刻就可以使用。
典型的例子是使用Excel等電子表格的普通業務人員,將Excel和紙質工作系統化,自己創建應用程序,以簡化日常工作。這些應用程序由其使用者來完成運營,隨著業務的變化可以靈活的調整應用程序的功能。
無代碼開發平臺不能通過編寫代碼擴展功能,所以不適合功能較多的程序開發。此外,由于API的系統協作自由度較低,也不適合核心系統的開發。
擴展閱讀: