企業級應用是企業軟件應用中的一個類別,被稱爲軟件開發領域的「明珠」。典型的企業級應用一般能夠分爲三個大類,即支撐企業核心業務的應用系統(如生產製造業的MES、交通運輸業的TMS)、涵蓋企業全流程的大規模綜合型系統和基於行業軟件定製開發的個性化模塊。這些企業級應用支撐着企業的核心業務發展,爲推動企業數字化打下堅實的基礎。前端
隨着信息化的推動,企業對定製化應用的需求也日漸增加。這對於技術負責人來講,這既是機遇也是挑戰:該如何才能在有限的預算下,快速開發出與企業業務需求貼合的企業級應用呢?隨着低代碼技術的問世,模型驅動的開發方式,革命性的生產力優點,讓愈來愈多的開發團隊引入低代碼技術,加速企業級應用落地。數據庫
然而,與常見的互聯網應用項目相比,支撐企業核心業務的企業級應用具備高價值、高複雜度和高技術標準等特色。這些特性決定了可以開發企業級應用的工具,必然可以知足互聯網應用的開發,反之則不盡然。這就意味着選擇一款企業級應用低代碼開發平臺,除了生產力外,還需關注工具自己的技術架構、開放程度及安全可控性等關鍵指標。編程
本文將從系統架構開始,以活字格企業級低代碼開發平臺爲例,從開發流程到編程擴展,全面介紹具有可以支撐企業級應用開發的低代碼開發工具,及這類工具的系統架構。後端
現代的軟件開發流程與協做模式,凝聚了數代軟件人的智慧,並造成了完整的生態系統,普遍服務於包括企業級軟件在內的各種軟件項目。活字格企業級低代碼開發平臺出自全球領先的開發技術提供商葡萄城,站在了巨人的肩膀上,可適配業界主流的敏捷式開發流程,覆蓋應用開發的全生命週期。瀏覽器
在頂層架構上看,活字格由活字格設計器和服務器構成,可對接第三方協做服務器,覆蓋企業級應用開發的全生命週期。安全
一般狀況下,開發者使用活字格開發企業級應用的流程以下:服務器
如上圖所示,使用活字格開發應用的流程與專業的純代碼開發並沒有顯著差別,這意味着開發者能夠充分借鑑軟件開發行業中積累造成的項目管理經驗,實行敏捷化的項目管理和更緊湊的產品迭代週期,知足大規模、高複雜度的企業級開發需求。微信
爲了讓企業的軟件系統長期可靠運行,規避「數據孤島」帶來的不便,企業級應用對可維護性和系統集成能力的要求遠高於互聯網應用。這就對低代碼開發工具提出了更高的要求,不但要好用、好交付,還得好維護。而這一切,都得從使用低代碼開發工具所構建的應用自己講起。網絡
開發者使用活字格構建的應用爲純 HTML5 Web 應用,最終用戶能經過 PC 瀏覽器、手機 APP、微信或者釘釘來使用。支撐該應用的各個引擎和類庫,都凝聚了葡萄城在專業控件領域 40 年的技術積累,能全面知足企業級應用開發所需。此外,該 Web 應用還具備很強的開放性,支持多種主流數據庫、各類系統集成插件和開放的 API 編程接口。架構
在運行時層面,活字格的運行時架構,充分考慮了開發者對集中管理開發內容和靈活分發、複用開發成果的需求。使用活字格構建的應用由可發佈文件和活字格服務器構成,可發佈文件須在活字格服務器上加載和運行。可發佈文件由活字格設計器生成,支持保存到本地,或一鍵發佈到服務器,其內容包含了開發者所構建的所有內容,主要包含:
這些內容被打包在一個文件中,開發者能夠隨時使用活字格設計器打開和修改這些內容。爲了進一步提高開發效率,活字格設計器還提供了依賴檢查和自動更新功能。如開發者修改某個數據表中的列名,活字格設計器會自動檢查使用到該列的頁面和服務端邏輯,並自動進行更新,以確保系統正常運行。統一的開發工具配合自動更新功能,讓活字格的後期維護成本遠低於「自動生成源代碼」的模式。
活字格會按期升級以加強系統的功能和性能,而基礎類庫和服務程序與開發者構建的可發佈文件互相分離的設計,能讓開發者經過升級活字格的最新版本,及時享受到最新的軟件開發技術,讓本身開發的企業級應用,以最小的開發成本投入,跟上技術進步的浪潮。
低代碼開發平臺在設計思想上能夠分爲「表單驅動」和「模型驅動」兩種。前者將頁面的表單和數據的存儲結構合二爲一,然後者則與純代碼開發相似,實現了數據與表現的徹底分離。在業界的通行觀點中,「表單驅動」具備更低的使用門檻和技術門檻,可是應用場景的侷限性更高,一般僅用於開發簡單的數據填報系統,很難用在企業級應用的開發過程當中。
爲了知足企業級應用對業務場景複雜度以及對數據一致性的高要求,活字格採用「模型驅動」的理念進行設計。開發者能夠在活字格設計器中,分別設計用於定義數據模型的數據表,供用戶操做的頁面,以及運行於服務器上、承載複雜業務邏輯的服務端命令。
即使是沒有受過專業編程訓練的平民開發者也能輕鬆構建出專業級應用,達到知足數據庫設計範式、表與頁面分離式設計、先後端分離架構等軟件開發行業普遍推薦的技術要求,爲企業級應用的開發和維護打下堅實的基礎。
衆所周知,企業級應用的場景複雜多變,任何一款低代碼開發平臺都沒法經過內置功能來覆蓋全部企業級應用的開發所需。可是,考慮到培訓和使用成本,國內的企業主一般更願意爲覆蓋所有業務環節的系統買單。因此,編程擴展能力就成爲企業級應用開發的重中之重。有了編程接口的支持,開發者能夠用拖拉拽的方式,無編碼實現絕大多數業務需求;用編碼的方式,讓其餘業務需求成功落地。這樣才能避免項目卡死在「最後一千米」,解除開發者的後顧之憂。
不斷進化的活字格已經可讓開發者用拖拉拽的方式構建出絕大多數企業級應用的功能,愈來愈多的企業級應用開發者在項目全程中都沒有寫過任何代碼。但活字格並無止步於此,爲了知足企業級應用開發對擴展性的高要求,活字格還爲系統的各個分層均提供了編程擴展能力。若是有必要,開發者能經過編程接口,精確修改各層的處理邏輯,爲系統集成提供堅實的技術基礎。編程接口的典型應用場景以下:
數據庫編程功能:經過存儲過程或查詢視圖,提高系統的數據處理能力
總之,領先的技術架構是低代碼開發技術可以支撐企業級應用開發的必要條件。做爲國內低代碼技術趨勢的引領者,活字格凝聚了葡萄城專業開發控件領域40年的技術積累,能夠爲開發者提供專業級的工做流程與協做方式、模型驅動的開發模式以及覆蓋各層的編程接口,幫助開發者快速交付先後端分離的企業級應用。
如需瞭解活字格企業級低代碼開發平臺及其應用案例,歡迎在百度中搜索「活字格」,訪問官網,查看更多內容,免費下載試用。