“模型驅動”還不夠! 企業級低代碼開發平臺系統架構解密(一)

blank

"模型驅動"還不夠! 企業級低代碼開發平臺系統架構解密(一)

企業級應用是企業軟體應用中的一個類別,被稱為軟體開發領域的"明珠"。 典型的企業級應用通常可以分為三個大類,即支撐企業核心業務的應用系統(如生產製造業的MES、交通運輸業的TMS)、涵蓋企業全流程的大規模綜合型系統和基於行業軟體定製開發的個人化模組。 這些企業級應用支撐著企業的核心業務發展,為推進企業數位化打下堅實的基礎。

blank
(互聯網應用 vs 企業級應用)

隨著訊息化的推進,企業對定製化應用的需求也日漸增長。 這對於技術負責人來說,這既是機遇也是挑戰:該如何才能在有限的預算下,快速開發出與企業業務需求貼合的企業級應用呢? 隨著低代碼技術的問世,模型驅動的開發方式,革命性的生產力優勢,讓越來越多的開發團隊引入低代碼技術,加速企業級應用落地。

企業級應用對開發工具提出更高的技術要求

然而,與常見的互聯網應用專案相比,支撐企業核心業務的企業級應用具有高價值、高複雜度和高技術標準等特點。 這些特性決定了能夠開發企業級應用的工具,必然能夠滿足互聯網應用的開發,反之則不盡然。 這就意味著選擇一款企業級應用低代碼開發平臺,除了生產力外,還需關注工具本身的技術架構、開放程度及安全可控性等關鍵指標。

blank
(軟體開發工具為企業數位化提速)

本文將從系統架構開始,以活字格企業級低代碼開發平臺為例,從開發流程到程式設計擴展,全面介紹具備能夠支撐企業級應用開發的低代碼開發工具,及這類工具的系統架構。

blank
(活字格企業級低代碼開發平臺)

開發流程與協作方式,支撐敏捷化團隊管理

現代的軟體開發流程與協作模式,凝聚了數代軟體人的智慧,並形成了完整的生態系統,廣泛服務於包括企業級軟體在內的各類軟體專案。 活字格企業級低代碼開發平臺出自全球領先的開發技術供應商葡萄城,站在了巨人的肩膀上,可適配業界主流的敏捷式開發流程,覆蓋應用開發的全生命週期。

在頂層架構上看,活字格的由活字格設計器、活字格伺服器、以及第三方提供的協作伺服器構成,覆蓋企業級應用開發的全生命週期。

通常情況下,開發者使用活字格開發企業級應用的流程如下:

1. 開發者使用安裝在自己電腦上的活字格設計器,啟動開發工作;

2. 如需與其他開發者組成團隊,共同推進項目開發,或者需要進行版本管理,開發者可以利用協作伺服器(如碼雲、GitHub 等互聯網或安裝在局域網內的 Git 伺服器)和其他開發者進行協作;

3. 開發者在自己的電腦上,使用活字格設計器構建數據表、服務端邏輯、頁面等元素,完成應用開發和調試后,可以利用一鍵發佈功能,將應用打包成可發佈檔,部署到安裝有活字格伺服器程式的伺服器上;

4. 完整的活字格伺服器由活字格伺服器程式和管理主控台網站構成。 其中,系統管理員可以通過管理控制台,可視化管理系統使用者和許可權,並且完成網路安全、自動備份等配置工作;

5. 配置完成後,最終使用者即可通過包括瀏覽器、APP、微信、釘釘等在內的多終端使用開發者構建的企業級應用了。

blank
(活字格的開發流程)

如上圖所示,使用活字格開發應用的流程與專業的純代碼開發並無顯著差異,這意味著開發者可以充分借鑒軟體開發行業中積累形成的專案管理經驗,實行敏捷化的專案管理和更緊湊的產品反覆運算週期,滿足大規模、高複雜度的企業級開發需求。

開發出的應用架構,達到專業架構師水準

為了讓企業的軟體系統長期可靠運行,規避「數據孤島」帶來的不便,企業級應用對可維護性和系統集成能力的要求遠高於互聯網應用。 這就對低代碼開發工具提出了更高的要求,不但要好用、好交付,還得好維護。 而這一切,都得從使用低代碼開發工具所構建的應用本身講起。

開發者使用活字格構建的應用為純 HTML5 Web 應用,最終使用者能通過 PC 瀏覽器、手機 APP、微信或者釘釘來使用。 支撐該應用的各個引擎和類庫,都凝聚了葡萄城在專業控件領域 40 年的技術積累,能全面滿足企業級應用開發所需。 此外,該 Web 應用還具有很強的開放性,支援多種主流資料庫、各種系統集成外掛程式和開放的 API 程式設計介面。

blank
(活字格的系統架構)

在運行時層面,活字格的運行時架構,充分考慮了開發者對集中管理開發內容和靈活分發、復用開發成果的需求。 使用活字格構建的應用由可發佈檔和活字格伺服器構成,可發佈檔須在活字格伺服器上載入和運行。 可發佈檔由活字格設計器生成,支援保存到本地,或一鍵發佈到伺服器,其內容包含了開發者所構建的全部內容,主要包含:

  • 支援 PC 端瀏覽器和行動端的頁面。 這些頁面基於標準的 HTML5、CSS3 構建,相容性好。
  • 用來描述業務邏輯和使用者交互的腳本。 腳本採用了活字格自定義的格式進行描述,支撐起工作流、自動化任務、ODATA 服務等。 相比於傳統的腳本語言,活字格遮罩了平臺的差異,使用者不需要關心這些腳本運行在 Windows 還是 Linux 的伺服器,或 PC 還是手機上的瀏覽器。
  • 使用第三方工具開發的程式集或腳本、樣式檔。 這些檔基於活字格提供的程式設計介面和最佳實踐構建,可以與使用活字格構建的頁面、業務邏輯和使用者交互腳本完全融合,協同增效。
blank
(使用活字格開發出的應用)

這些內容被打包在一個檔中,開發者可以隨時使用活字格設計器打開和修改這些內容。 為了進一步提升開發效率,活字格設計器還提供了依賴檢查和自動更新功能。 如開發者修改某個數據表中的列名,活字格設計器會自動檢查使用到該列的頁面和服務端邏輯,並自動進行更新,以確保系統正常運行。 統一的開發工具配合自動更新功能,讓活字格的後期維護成本遠低於"自動生成原始程式碼"的模式。

活字格會定期升級以增強系統的功能和性能,而基礎類庫和服務程式與開發者構建的可發佈檔互相分離的設計,能讓開發者通過升級活字格的最新版本,及時享受到最新的軟體開發技術,讓自己開發的企業級應用,以最小的開發成本投入,跟上技術進步的浪潮。

模型驅動"模式,不懼複雜業務場景

低代碼開發平臺在設計思想上可以分為「表單驅動」和「模型驅動」兩種。 前者將頁面的表單和數據的存儲結構合二為一,而後者則與純代碼開發類似,實現了數據與表現的完全分離。 在業界的通行觀點中,「表單驅動」具有更低的使用門檻和技術門檻,但是應用場景的局限性更高,通常僅用於開發簡單的數據填報系統,很難用在企業級應用的開發過程中。

為了滿足企業級應用對業務場景複雜度以及對數據一致性的高要求,活字格採用"模型驅動"的理念進行設計。 開發者可以在活字格設計器中,分別設計用於定義數據模型的數據表,供使用者操作的頁面,以及運行於伺服器上、承載複雜業務邏輯的服務端命令。

即便是沒有受過專業程式設計訓練的平民開發者也能輕鬆構建出專業級應用,達到滿足資料庫設計範式、表與頁面分離式設計、前後端分離架構等軟體開發行業廣泛推薦的技術要求,為企業級應用的開發和維護打下堅實的基礎。

blank
(活字格採用模型驅動的開發方式)

程式設計擴展能力,開放無限可能

眾所周知,企業級應用的場景複雜多變,任何一款低代碼開發平臺都無法通過內置功能來覆蓋所有企業級應用的開發所需。 但是,考慮到培訓和使用成本,國內的企業主通常更願意為覆蓋全部業務環節的系統買單。 所以,程式設計擴展能力就成為企業級應用開發的重中之重。 有了程式設計介面的支持,開發者可以用拖拉拽的方式,無編碼實現絕大多數業務需求;用編碼的方式,讓其他業務需求成功落地。 這樣才能避免專案卡死在「最後一公里」,解除開發者的後顧之憂。

不斷進化的活字格已經可以讓開發者用拖拉拽的方式構建出絕大多數企業級應用的功能,越來越多的企業級應用開發者在專案全程中都沒有寫過任何代碼。 但活字格並沒有止步於此,為了滿足企業級應用開發對擴展性的高要求,活字格還為系統的各個分層均提供了程式設計擴展能力。 如果有必要,開發者能通過程式設計介面,精確修改各層的處理邏輯,為系統集成提供堅實的技術基礎。 程式設計介面的典型應用場景如下:

  • CSS 樣式表:為表格或輸入框精確設置外觀樣式,滿足企業統一的UI設計風格要求
  • 前端程式設計介面:調用第三方硬體設備的ActiveX/ OCX 介面,集成圖像採集、讀卡機等硬體設備
  • 後端程式設計介面:在後端集成第三方Web API介面,集成互聯網服務或行業軟體
  • 資料庫程式設計功能:通過存儲過程或查詢檢視,提升系統的數據處理能力
blank
(活字格的程式設計擴充能力)

總之,領先的技術架構是低代碼開發技術能夠支撐企業級應用開發的必要條件。 作為國內低代碼技術趨勢的引領者,活字格凝聚了葡萄城專業開發控件領域40年的技術積累,可以為開發者提供專業級的工作流程與協作方式、模型驅動的開發模式以及覆蓋各層的程式設計介面,幫助開發者快速交付前後端分離的企業級應用。

歡迎訪問活字格企業級低代碼開發平臺官網,查看更多內容及其應用案例,免費下載試用。

What do you think?

Written by marketer

blank

最近很火的低代碼開發到底是什麼?

blank

5年5億個應用 低代碼平臺會幹掉IT部嗎?