企業在數字化轉型過程中,面臨著軟體開發的不確定性。如開發人員間的溝通、業務的靈活多變、軟體工程師技能差異、新技術的出現等,導致軟體開發實際成果和人力工作量的投入之間產生很大的差距。
讓不確定因子變為確定性因子,把複雜留給平臺,簡單留給開發者,是軟體開發效率改進一直努力的方向,也是低程式碼理念的來源。
從軟體開發的過程來看:從機器語言到組合語言,到面向物件、面向函式等高階語言,軟體開發技術其實攀登的是一棵“複用”樹。複用的表現方式,主要體現為:元件化和框架化。而這兩種表現形式正是低程式碼開發平臺所帶來的特點。
Gartner預測到2024年,低程式碼應用程式開發將負責超過65%的應用程式開發活動。低程式碼將成為下一代企業IT系統的主流開發手段。
脫胎於華為內部流程與IT的最佳實踐的低程式碼開發平臺AppCube,僅需拖拉拽操作就能搭建各種業務流程,真正的幫助到企業快速開發,應對市場發展。
那麼,低程式碼開發平臺AppCube都有哪些特徵幫助使用者進行應用快速開發?平臺開放性如何呢?為此,華為雲開發者社群邀請到了華為雲AppCube的專家組老師,聽他們聊一聊華為雲的低程式碼應用之道。
1、如何正確理解低程式碼?它的核心價值是什麼?
低程式碼是一個相對的概念。從字面上看,能減少程式碼量的開發方式就可以看做是低程式碼。我們認為低程式碼平臺指面向業務開發人員,遮蔽底層技術複雜性,以視覺化方式為主,少量程式碼為輔,用來快速搭建各種應用系統的開發平臺。
如果套用自然界的進化論,低程式碼可以看做是軟體開發方式在應對飛速增長的軟體業務規模及不斷提高的軟體業務複雜度這一雲計算時代大背景下的進化和演進。它的核心價值就在於幫助大量傳統企業以低門檻、低成本的方式構建應用系統,幫助企業充分發揮上雲後雲計算的算力優勢。
2、AppCube設計初衷是什麼?它如何提高開發者的應用構建能力?
AppCube是2015年透過國內外專家聯合設計開發出來的,早先是應用在電信行業,減少電信軟體的定製人力投入。
AppCube提供四大能力,幫助開發者高效構建應用:第一,頁面編排能力,可以把頁面的元件、佈局、顏色進行編排;第二,相關資料建模能力,用於儲存業務資料;第三,業務邏輯編排能力,基於機器自動執行的、不需要人為干涉的流程,可以高效編排;第四,BPM的流程編排的能力,用以解決人為干涉和審批類的流程問題。
當然,企業數字化的場景非常複雜。為此,華為雲應用魔方AppCube提供了全場景的開發能力:對於專業軟體開發工程師和企業IT人員,可以用低程式碼開發能力快速開發應用;對於業務人員,可以用零程式碼能力,透過一些拖拽快速構建;對於面向專業領域的專業問題,如複雜業務演算法,開發者可以使用Java、Python等語言開發,以微服務的方式釋出到AppCube低程式碼平臺進行託管和呼叫。
3、AppCube的核心競爭力有哪些,能讓其在當前市場上脫穎而出?
AppCube不僅僅只提供應用開發能力,也提供應用執行和運維能力,包括應用託管、部署、升級能力,租戶側的應用運維能力(監控告警、日誌等)以及執行時的配置能力。一些市場上的低程式碼產品僅提供應用啟停能力甚至無應用託管能力。
從應用開發能力來說,AppCube帶有華為數字化轉型基因,更能支撐行業複雜應用場景及核心業務軟體開發。AppCube整體架構是以元資料驅動的,提供服務總入口,Serverless後端支撐,完美的解決了數字化轉型複雜場景應用構建的問題。
AppCube作為開放能力入口,提供了快速呼叫華為雲能力、WeLink能力、第三方系統能力的方法,讓開發者能夠更容易地使用到先進的技術和服務。AppCube還支援資產沉澱和複用,過往的經驗可以變成開發資產/服務上架共享,讓每個AppCube開發者都可以站在別人的肩膀上走的更遠。
4、AppCube為開發者提供了哪些服務/工具,幫助開發者快速提升效率?
AppCube為開發者從應用開發到上線執行,提供三大服務:第一,開發者服務,給開發者提供了一個開發環境,讓應用可以快速編排和開發,也可以編排相應的服務,或呼叫微服務。第二,沙箱測試服務,開發的應用可以快速打包到測試環境,進行業務上線前的測試,第三,執行態服務,對於測試完畢的應用可以打包安裝到執行環境,使應用上線執行。
例如在開發環境中,AppCube提供豐富的應用模板,實現0到1的開發和沉澱,應用模板可以直接安裝使用,對於定製化的訴求可以直接在此模板上修改原始碼。比如裝置維修的場景,使用者會給客服人員打電話,客服接到電話之後馬上建立工單,然後派單給工程師進行維修。類似於這種實際應用場景有很多的模板,在華為雲AppCube模板市場可直接訂閱之後可立即上線,相當於開放了很多基於應用場景的原始碼,模板其實就是一些開原始碼。
5、有哪些開發場景可以使用華為雲應用魔方AppCube開發?
AppCube可以構建如下四類應用建立:第一,構建2B企業複雜的內部流程類、內部管理類、生產管理類應用。第二,構建企業大屏、領導駕駛艙等展示類應用。第三,可以構建手機端的小程式等應用,第四,構建辦公、流程類等輕應用。點選體驗(https://www.huaweicloud.com/product/appcube.html?utm_source=goujian&utm_medium=paas&utm_content=content)
AppCube操作頁面
移動端應用樣例
IOC大屏應用樣例
裝修管理系統樣例
6、使用AppCube構建應用,所產生的相關資料儲存、安全等問題如何解決?
在資料儲存方面,AppCube提供資料庫,應用執行時產生的業務資料儲存、訪問、處理、傳遞等CRUD操作都可以透過相應的API完成。
AppCube支援在App、BO或者Addon App中開發或者編輯服務編排、指令碼、BPM、狀態機、標準頁面、頁面資產時,在獲取鎖、未啟用狀態且資料為非受保護下的開發資料可以自動儲存在快取中。預設每15分鐘儲存一次,最長儲存7天。
在應用安全防護方面,AppCube租戶資料是互相隔離的,安全性符合華為雲服務安全標準。同樣是利用AppCube模板開發出來的應用,在不同租戶下會打上不同的名稱空間字首以示區分,也就是說,不同租戶用同一個模板創建出來的應用是不一樣的。
7、AppCube中模板的修改和進一步開發,是否對開發者開放?
AppCube提供多樣的平臺能力供開發者進行應用配置開發。開發者使用模板建立應用後,可以在開發頁面左側的目錄樹中檢視當前應用的資源目錄並進行修改,如新增/刪除頁面、業務邏輯、流程、指令碼等;也可以選中想要修改的元件、圖元等應用元素,在頁面右側的元素配置框中修改相應的設定。
不僅如此,AppCube給予開發者充分的自由度,非常歡迎開發者自己開發軟體模板並共享。
8、是否會有相關的學習資料、實操的演示影片等提供給開發者?
我們在華為雲學院有上架免費的AppCube學習課程,平臺開發環境中也內建了學習中心和實戰演練版塊,有案例演示影片及影片操作指導。另外我們還會定期舉辦AppCube開發者雲上交流會,針對開發者問題以及平臺新特性等進行直播講解。另外,可以關注華為雲應用魔方AppCube開發者論壇和應用魔方AppCube公眾號獲取交流會的舉辦和報名資訊。
9、如何看待低程式碼開發接下來的發展?AppCube會有哪些產品開發規劃?
市場對低程式碼的關注度提高,對產品領域來說是利好的,勢必會湧現大批低程式碼業務平臺,市場對低程式碼平臺的體驗期待和要求也會更高,競爭會更激烈,行業會逐漸發展成熟,低程式碼開發領域會在各行各業出現更精細、更有行業屬性的平臺,相應的行業標準和平臺規範會逐漸建設起來,我們對這些還是很期待的。
AppCube在接下來會繼續最佳化開發體驗,推出零碼體驗場景,降低開發者上手門檻;深化與辦公協同軟體WeLink的融合整合,推進能力聯結器建設,服務好企業數字化;聯合各行各業的夥伴共建平臺,做好生態,服務好開發者。