專業低代碼之所以區別于一般低代碼,核心是要解決低代碼和專業代碼的有機融合問題。在此之上,從滿足專業開發人員的需求,提高開發效率的角度出發,結合低代碼和專業代碼有機融合的相關思路,提出專業低代碼開發平臺應具備的十二項關鍵能力。這些關鍵能力從設計開發、部署運維、團隊協作、企業應用要求等多方面提出具體的能力要求,一個低代碼開發平臺能滿足得越多其在低代碼與專業代碼的融合程度越高,也就越接近于專業低代碼平臺的概念及要求。
1、低代碼和專業代碼有機融合:低代碼和專業代碼是一體的;低代碼的模型必須建立在專業代碼之上;模型設計輸出的就是專業代碼;在低代碼可視化設計過程中,前后端隨時都可以進行專業開發,而且是可逆可持續迭代的,不會因為采用了專業開發就失去了低代碼開發的能力。
2、專業技術框架:專業低代碼開發平臺的前后端,必須采用業界主流技術框架,符合大中型企業開發團隊的技術棧。后端Java Spring,前端React或Vue,這是當下企業應用的主流框架和事實標準。隨著技術的發展演進,未來前后端主流語言和框架也可能改變,專業低代碼也要能支持主流語言和框架的演進改變,保護企業在低代碼平臺上的投資和資產。
3、專業開發工具:專業低代碼開發平臺必須支持開發者可以使用專業的IDE開發工具,如Eclipse、IDEA、VSCode等開發者常用的開發工具。另外,專業開發工具并不僅限于IDE工具,還包括構建工具(Maven)、測試工具(JMeter)、質量工具(SonarQube)等。
4、專業團隊協作:支持專業團隊協作工具,Git或Svn,支持版本管理和分支管理。而且不僅專業代碼部分支持團隊協作,更重要的是低代碼模型本身也是支持團隊協作工具的。這個能力同專業開發工具一樣,對于專業開發團隊來說,非常重要。我這里舉個例子:我就想知道當前版本與前一個版本有哪些差異,這些差異可能是模型的也可能是代碼的,如果沒有Git或Svn這種工具幾乎是不能實現的。
5、應用源碼全部開放:支持輸出應用的全部源碼,包括模型背后生成的源碼和所依賴的底層類庫和組件源碼,這樣應用才是白盒的,應用里的每一行代碼都可以調試跟蹤。
6、支持組件開發擴展:組件是所有低代碼開發的核心,專業低代碼一方面要提供豐富的組件,另一方面必須提供完善的組件開發規范和開發工具,支持開發者自定義組件,同時要提供組件市場和組件的生命周期管理,組件發布、更新、升級和版本管理。讓開發者可以通過組件封裝進行代碼高度復用,擴展低代碼開發平臺本身,真正發揮低代碼快速開發的優勢,持續積累,自主可控。
7、支持獨立部署:基于專業低代碼平臺開發的應用,源碼能夠獨立于低代碼平臺編譯、構建和部署,可以完全獨立于低代碼平臺運行。
8、DevOps:支持專業DevOps工具鏈,應用自動化構建、發布、部署、升級,開發、測試、生產多環境隔離,實現研發流水線全過程敏捷管理。
9、云原生架構:專業低代碼開發平臺應與新一代云原生架構相結合,支持環境自動化、測試自動化、部署自動化、升級自動化、資源調度自動化,從研發到運維,為企業客戶提供全方位的平臺解決方案。
10、企業級集成能力:數據集成、服務集成、流程集成、門戶集成、組織集成、統一身份認證......
11、企業級應用安全:支持企業級應用和數據的高安全要求,滿足等保定級的相關要求。
12、企業級應用性能:支持大規模高并發場景,隨著業務增長可橫向擴展。