大緻來探讨下低代碼及目前低代碼的現狀與發展吧。
低代碼(Low-Code)就是應用新技術、新思想、新的軟體架構、新的設計方法打造一個軟體定制平台,來實作相對較低的代碼編寫而實作軟體應用需求的目的,其目的就是要降低軟體應用定制的開發難度、加快軟體應用定制的進度等來實作軟體應用的快速定制,最終降低軟體開發的成本。産生這一趨勢的原因一方面是軟體個性化定制需求旺盛,另一方面就是軟體目前定制開發難度高、周期長、成本高、個性化定制能力差等多方面的原因。
雖說目前低代碼快速開發平台不少,但大多是子產品預定制、存儲過程預定制之類先定制些功能子產品單元,然後通過可視化編輯或者少量代碼來實作功能單元的調用,對于标準化、成熟、簡單的功能應用問題會少些,但涉及到複雜的以及新的功能應用還是要依耐平台提供商開發新的功能單元來支援的,自然周期費用就不大能得到保證。另外很多低代碼平台就用個内嵌個webview實作用戶端,用html方式來定制應用,在裝置參差不齊的裝置上浏覽器版本相容暴雷的事并不少見,運作緩慢且與硬體互動差,體驗自然不好,顯然這些并不是程式員、軟體開發人員所想要的。
應用的個性化定制是個老大難的問題,要不然不會有那麼多的低代碼平台出來,但在3UCS團隊看來,這些隻是預制子產品的低代碼拼接并不能解決個性化定制的實際問題,在這種封閉的平台裡,新的功能子產品、存儲過程都得仰仗平台供應商的後續,局限性太大,對于複雜應用更是難委以重任,簡單的可視化勉強用用還行。
另外應用代碼在PC、手機、網頁平台上的相容适用也是個大問題,往往需要為應用單獨開發手機用戶端什麼的。
還有一個特别大的問題,一個手機用戶端動不動占存儲記憶體數百兆甚至幾個G,運作記憶體也是數百兆起步,手機能裝多少個APP?能同時運作多少個APP?要麼手機卡的要命,要麼幹掉一些應用,手機APP的性能越來越成為問題!
而真正要靈活而不受限(自己可定制子產品功能單元等,邏輯自行定義等,界面布局自行定制)的原子級的應用定制低代碼平台并不多,做到像xPlus(3UCS)那樣支援原生手機用戶端、PC用戶端、網頁版的更少,目前好像低代碼平台中也就xPlus可以定制ERP之類複雜應用,因為它可以不提供任何開發好諸如CRM、ERP的子產品什麼的,比如可以任何資料表結構自行定制應用(可以自動生成),其工程師花費不足3月參考某頭部ERP成功定制3UCS ERP(XBS),在工業網際網路、RPA等都有應用,http://Github.com/dspflash上還開源着。可參見文章"bizfree:分分鐘快速定制您的專屬個性化軟體應用"。
而要打造個優秀的低代碼平台,我覺得3UCS的做法是值得參考的,3UCS在打造xPlus考慮了很多方案,最後确定了幾點:
1、重新定義一組業務語言規範,便誕生了BizXML,用XML描述業務應用的界面、邏輯、流程等;
2、C/S架構為主,同時支援B/S模式,于是原生設計PC用戶端引擎、手機用戶端引擎、網頁服務引擎,為保證高性能,這三類引擎核心全C++開發并使用同一套代碼,UI部分參考不同平台特性單獨設計:Windows、linux界面渲染與互動使用C++、Android使用Java、IOS使用Obj-c、web使應CGI(C++開發),服務端使用C++。事實上各平台的執行程式都隻有幾M,低資源耗消高效;
3、各元件為不同平台解釋執行通用的BizXML代碼。簡單的講可以了解BizXML 類似于html,浏覽器載入解析html,xPlus的PC、手機用戶端、web服務引擎載入解析執行BizXML。你可能會問那為什麼就不直接用html,webview?這種方式大家用的少嗎?凸顯的問題還不夠麼?xPlus平台是想打造一個輕量級的高性能5S軟體平台,這一點您可以參看下:5S軟體就是将軟體應用全次元簡單化的軟體系統;
4、為了應用定制更簡單,推出了xLogic,盡可能減少if-else之類的代碼編寫而是可視化表格編輯;
5、推出BizTool,開發者可以打開資料表結構,稍作配置就可以生存應用(電腦用戶端、手機用戶端都可以操作),可參見:分分鐘快速定制您的專屬個性化軟體應用——BizTool自動化工具簡介;
6、PC用戶端XOne提供開發者模式,直接定位界面、邏輯代碼,線上編輯修改更新執行。
完整的關于xPlus的技術可參看:讓軟體飛——“X+”技術揭秘
低代碼(Low-Code)就是應用新技術、新思想、新的軟體架構、新的設計方法打造一個軟體定制平台,來實作相對較低的代碼編寫而實作軟體應用需求的目的,其目的就是要降低軟體應用定制的開發難度、加快軟體應用定制的進度等來實作軟體應用的快速定制,最終降低軟體開發的成本。産生這一趨勢的原因一方面是軟體個性化定制需求旺盛,另一方面就是軟體目前定制開發難度高、周期長、成本高、個性化定制能力差等多方面的原因。
雖說目前低代碼快速開發平台不少,但大多是子產品預定制、存儲過程預定制之類先定制些功能子產品單元,然後通過可視化編輯或者少量代碼來實作功能單元的調用,對于标準化、成熟、簡單的功能應用問題會少些,但涉及到複雜的以及新的功能應用還是要依耐平台提供商開發新的功能單元來支援的,自然周期費用就不大能得到保證。另外很多低代碼平台就用個内嵌個webview實作用戶端,用html方式來定制應用,在裝置參差不齊的裝置上浏覽器版本相容暴雷的事并不少見,運作緩慢且與硬體互動差,體驗自然不好,顯然這些并不是程式員、軟體開發人員所想要的。
應用的個性化定制是個老大難的問題,要不然不會有那麼多的低代碼平台出來,但在3UCS團隊看來,這些隻是預制子產品的低代碼拼接并不能解決個性化定制的實際問題,在這種封閉的平台裡,新的功能子產品、存儲過程都得仰仗平台供應商的後續,局限性太大,對于複雜應用更是難委以重任,簡單的可視化勉強用用還行。
另外應用代碼在PC、手機、網頁平台上的相容适用也是個大問題,往往需要為應用單獨開發手機用戶端什麼的。
還有一個特别大的問題,一個手機用戶端動不動占存儲記憶體數百兆甚至幾個G,運作記憶體也是數百兆起步,手機能裝多少個APP?能同時運作多少個APP?要麼手機卡的要命,要麼幹掉一些應用,手機APP的性能越來越成為問題!
而真正要靈活而不受限(自己可定制子產品功能單元等,邏輯自行定義等,界面布局自行定制)的原子級的應用定制低代碼平台并不多,做到像xPlus(3UCS)那樣支援原生手機用戶端、PC用戶端、網頁版的更少,目前好像低代碼平台中也就xPlus可以定制ERP之類複雜應用,因為它可以不提供任何開發好諸如CRM、ERP的子產品什麼的,比如可以任何資料表結構自行定制應用(可以自動生成),其工程師花費不足3月參考某頭部ERP成功定制3UCS ERP(XBS),在工業網際網路、RPA等都有應用,http://Github.com/dspflash上還開源着。可參見文章"bizfree:分分鐘快速定制您的專屬個性化軟體應用"。
而要打造個優秀的低代碼平台,我覺得3UCS的做法是值得參考的,3UCS在打造xPlus考慮了很多方案,最後确定了幾點:
1、重新定義一組業務語言規範,便誕生了BizXML,用XML描述業務應用的界面、邏輯、流程等;
2、C/S架構為主,同時支援B/S模式,于是原生設計PC用戶端引擎、手機用戶端引擎、網頁服務引擎,為保證高性能,這三類引擎核心全C++開發并使用同一套代碼,UI部分參考不同平台特性單獨設計:Windows、linux界面渲染與互動使用C++、Android使用Java、IOS使用Obj-c、web使應CGI(C++開發),服務端使用C++。事實上各平台的執行程式都隻有幾M,低資源耗消高效;
3、各元件為不同平台解釋執行通用的BizXML代碼。簡單的講可以了解BizXML 類似于html,浏覽器載入解析html,xPlus的PC、手機用戶端、web服務引擎載入解析執行BizXML。你可能會問那為什麼就不直接用html,webview?這種方式大家用的少嗎?凸顯的問題還不夠麼?xPlus平台是想打造一個輕量級的高性能5S軟體平台,這一點您可以參看下:5S軟體就是将軟體應用全次元簡單化的軟體系統;
4、為了應用定制更簡單,推出了xLogic,盡可能減少if-else之類的代碼編寫而是可視化表格編輯;
5、推出BizTool,開發者可以打開資料表結構,稍作配置就可以生存應用(電腦用戶端、手機用戶端都可以操作),可參見:分分鐘快速定制您的專屬個性化軟體應用——BizTool自動化工具簡介;