深入評(píng)析低代碼開(kāi)發(fā)平臺(tái)(深入評(píng)析低代碼開(kāi)發(fā)平臺(tái)的優(yōu)勢(shì))
深入評(píng)析低代碼開(kāi)發(fā)平臺(tái)(深入評(píng)析低代碼開(kāi)發(fā)平臺(tái)的優(yōu)勢(shì))
主持人:
郭衛(wèi)丹 浙江師范大學(xué)附屬中學(xué)
嘉 賓:
劉宗凡 廣東省四會(huì)市四會(huì)中學(xué)
邱元陽(yáng) 河南省安陽(yáng)縣職業(yè)中專
倪俊杰 浙江省桐鄉(xiāng)市鳳鳴高中
楊 磊 天津市第五中學(xué)
APaaS火爆背景
邱元陽(yáng):去年,我們討論過(guò)學(xué)校數(shù)字化建設(shè)中的前臺(tái)和后臺(tái)的鏈接點(diǎn),即將業(yè)務(wù)共同的工具和技術(shù)予以沉淀的“中臺(tái)”這個(gè)概念。今年,“低代碼”接力“中臺(tái)”成為新的IT熱點(diǎn),引發(fā)了眾多業(yè)內(nèi)人士論戰(zhàn)。其中有兩種極端的觀念,一種是“低端炒作”“玩具開(kāi)發(fā)”,另一種是“顛覆行業(yè)”“取代碼農(nóng)”。若說(shuō)“顛覆”“取代”,事實(shí)上,低代碼、圖形化的開(kāi)發(fā)模式存在至少已有20年歷史了,又豈能在今天突然顛覆?若說(shuō)“低端”“玩具”,事實(shí)上,最早的國(guó)外低代碼平臺(tái)OutSystems、Mendix都已成為新興的獨(dú)角獸企業(yè);亞馬遜、微軟、華為、阿里、騰訊等國(guó)內(nèi)外IT巨頭,以及大量傳統(tǒng)軟件廠商、新興SaaS廠商紛紛進(jìn)駐該領(lǐng)地,如此勢(shì)頭,又豈能以“無(wú)意義”一言概之?低代碼的形式是“可視化編程”,核心是“復(fù)用”。像中臺(tái)一樣,提高復(fù)用率是低代碼的關(guān)鍵。但單單“復(fù)用”不足以解釋今年低代碼平臺(tái)的火爆,低代碼突然火爆的原因是什么?
劉宗凡:邱老師提出的問(wèn)題很有意義,以往,程序設(shè)計(jì)和應(yīng)用開(kāi)發(fā)不可避免地要寫(xiě)代碼,因而成為比較專業(yè)的領(lǐng)域。對(duì)教師來(lái)說(shuō),大都接觸過(guò)很多廠商和機(jī)構(gòu)提供的為了降低編程門檻和開(kāi)發(fā)難度,針對(duì)非專業(yè)人員的積木式編程和開(kāi)發(fā)工具,如針對(duì)低齡兒童的積木式編程工具Scratch和編程貓,針對(duì)手機(jī)應(yīng)用開(kāi)發(fā)的App Inventor,針對(duì)兒童機(jī)器人活動(dòng)的樂(lè)高,針對(duì)教學(xué)課件的紅月亮等。這些積木式開(kāi)發(fā)工具,將常用功能和算法集成到了相應(yīng)的模塊中,簡(jiǎn)化了程序設(shè)計(jì)代碼,甚至完全屏蔽了代碼,使編程和開(kāi)發(fā)可以由普通用戶和非專業(yè)人員來(lái)完成,減輕了開(kāi)發(fā)人員的勞動(dòng)強(qiáng)度。對(duì)積木式編程工具而言,還可以避免枯燥的語(yǔ)法和算法破壞程序設(shè)計(jì)體驗(yàn),減少算法恐懼,使學(xué)生盡早接觸編程。對(duì)積木式開(kāi)發(fā)工具而言,大幅度減少了寫(xiě)代碼的工作量,并可以使更多的人參與到開(kāi)發(fā)中來(lái),不僅使開(kāi)發(fā)者有成就感,而且吸引了更多的用戶,并降低了最終用戶的成本。教學(xué)環(huán)境中,也有很多可以利用的無(wú)代碼開(kāi)發(fā)工具,如秋風(fēng)試題系統(tǒng)、方正奧思創(chuàng)作工具等。當(dāng)下,云計(jì)算技術(shù)的成熟、應(yīng)用移動(dòng)化等,為低代碼2.0提供了技術(shù)基礎(chǔ),這好比互聯(lián)網(wǎng)出現(xiàn)前夕,計(jì)算機(jī)網(wǎng)絡(luò)是一座座孤島,互聯(lián)網(wǎng)打破了這些孤島。同樣,如今的信息孤島、云端孤島屢見(jiàn)不鮮,曾經(jīng)的低代碼作為開(kāi)發(fā)工具也只是在構(gòu)建孤島。但“低代碼 云”的想象力將不止這些,如果能形成“互聯(lián)、共生的生態(tài)”,它有可能打破當(dāng)前應(yīng)用與應(yīng)用、企業(yè)與企業(yè)、開(kāi)發(fā)者與開(kāi)發(fā)者之間的孤島現(xiàn)狀,大大提高代碼復(fù)用率,進(jìn)而引發(fā)一次效率的飛躍。另外,國(guó)外低代碼平臺(tái)成功商業(yè)化,國(guó)內(nèi)“互聯(lián)網(wǎng) ”“數(shù)智化轉(zhuǎn)型”熱潮等都是低代碼開(kāi)發(fā)升級(jí)的催化因素。
郭衛(wèi)丹:和企業(yè)軟件開(kāi)發(fā)與應(yīng)用一樣,在學(xué)校信息化建設(shè)過(guò)程中,在享受一些成功軟件項(xiàng)目的便捷增效中,我們也看到很多失敗的例子,無(wú)法為學(xué)校帶來(lái)預(yù)期價(jià)值。軟件產(chǎn)品的搭建從原生代碼開(kāi)發(fā)到SaaS租用再到低代碼平臺(tái)的嘗試,都是人們?yōu)榱私档烷_(kāi)發(fā)成本、控制項(xiàng)目風(fēng)險(xiǎn)、提高開(kāi)發(fā)效率不斷努力的結(jié)果,人們期望能找到更通用更高效的解決方案。低代碼平臺(tái)之所以能廣泛應(yīng)用于使用單位軟件的搭建,就是因?yàn)閺牡讓铀季S出發(fā)找到了使用方的軟件的某些要義,即絕大部分單位的軟件由業(yè)務(wù)實(shí)體、業(yè)務(wù)流程、業(yè)務(wù)活動(dòng)、業(yè)務(wù)權(quán)限、統(tǒng)計(jì)報(bào)表這幾個(gè)要點(diǎn)組成,因此,低代碼平臺(tái)若能將以上要點(diǎn)抽象后實(shí)施,可形成比較通用的用戶軟件解決方案。
倪俊杰:業(yè)務(wù)的實(shí)體更明確地說(shuō)就是操作對(duì)象,如教師、學(xué)生用戶,也可以是某個(gè)應(yīng)用表單。這術(shù)的成熟、應(yīng)用移動(dòng)化等,為低代碼2.0提供了技術(shù)基礎(chǔ),這好比互聯(lián)網(wǎng)出現(xiàn)前夕,計(jì)算機(jī)網(wǎng)絡(luò)是一座座孤島,互聯(lián)網(wǎng)打破了這些孤島。同樣,如今的信息孤島、云端孤島屢見(jiàn)不鮮,曾經(jīng)的低代碼作為開(kāi)發(fā)工具也只是在構(gòu)建孤島。但“低代碼 云”的想象力將不止這些,如果能形成“互聯(lián)、共生的生態(tài)”,它有可能打破當(dāng)前應(yīng)用與應(yīng)用、企業(yè)與企業(yè)、開(kāi)發(fā)者與開(kāi)發(fā)者之間的孤島現(xiàn)狀,大大提高代碼復(fù)用率,進(jìn)而引發(fā)一次效率的飛躍。另外,國(guó)外低代碼平臺(tái)成功商業(yè)化,國(guó)內(nèi)“互聯(lián)網(wǎng) ”“數(shù)智化轉(zhuǎn)型”熱潮等都是低代碼開(kāi)發(fā)升級(jí)的催化因素。
低代碼平臺(tái)核心要義
郭衛(wèi)丹:和企業(yè)軟件開(kāi)發(fā)與應(yīng)用一樣,在學(xué)校信息化建設(shè)過(guò)程中,在享受一些成功軟件項(xiàng)目的便捷增效中,我們也看到很多失敗的例子,無(wú)法為學(xué)校帶來(lái)預(yù)期價(jià)值。軟件產(chǎn)品的搭建從原生代碼開(kāi)發(fā)到SaaS租用再到低代碼平臺(tái)的嘗試,都是人們?yōu)榱私档烷_(kāi)發(fā)成本、控制項(xiàng)目風(fēng)險(xiǎn)、提高開(kāi)發(fā)效率不斷努力的結(jié)果,人們期望能找到更通用更高效的解決方案。低代碼平臺(tái)之所以能廣泛應(yīng)用于使用單位軟件的搭建,就是因?yàn)閺牡讓铀季S出發(fā)找到了使用方的軟件的某些要義,即絕大部分單位的軟件由業(yè)務(wù)實(shí)體、業(yè)務(wù)流程、業(yè)務(wù)活動(dòng)、業(yè)務(wù)權(quán)限、統(tǒng)計(jì)報(bào)表這幾個(gè)要點(diǎn)組成,因此,低代碼平臺(tái)若能將以上要點(diǎn)抽象后實(shí)施,可形成比較通用的用戶軟件解決方案。
倪俊杰:業(yè)務(wù)的實(shí)體更明確地說(shuō)就是操作對(duì)象,如教師、學(xué)生用戶,也可以是某個(gè)應(yīng)用表單。這術(shù)的成熟、應(yīng)用移動(dòng)化等,為低代碼2.0提供了技術(shù)基礎(chǔ),這好比互聯(lián)網(wǎng)出現(xiàn)前夕,計(jì)算機(jī)網(wǎng)絡(luò)是一座座孤島,互聯(lián)網(wǎng)打破了這些孤島。同樣,如今的信息孤島、云端孤島屢見(jiàn)不鮮,曾經(jīng)的低代碼作為開(kāi)發(fā)工具也只是在構(gòu)建孤島。但“低代碼 云”的想象力將不止這些,如果能形成“互聯(lián)、共生的生態(tài)”,它有可能打破當(dāng)前應(yīng)用與應(yīng)用、企業(yè)與企業(yè)、開(kāi)發(fā)者與開(kāi)發(fā)者之間的孤島現(xiàn)狀,大大提高代碼復(fù)用率,進(jìn)而引發(fā)一次效率的飛躍。另外,國(guó)外低代碼平臺(tái)成功商業(yè)化,國(guó)內(nèi)“互聯(lián)網(wǎng) ”“數(shù)智化轉(zhuǎn)型”熱潮等都是低代碼開(kāi)發(fā)升級(jí)的催化因素。
就需要我們?cè)诘痛a平臺(tái)中建立數(shù)據(jù)模型來(lái)提取業(yè)務(wù)實(shí)體的數(shù)據(jù)特征,抽象為數(shù)據(jù)表,建立表間關(guān)系。在軟件開(kāi)發(fā)前期制作ER圖的過(guò)程就是數(shù)據(jù)建模。常見(jiàn)的低代碼開(kāi)發(fā)平臺(tái)均提供了豐富的控件,可以拖拽完成數(shù)據(jù)模型搭建。此外,數(shù)據(jù)模型搭建與表單展示合二為一,每完成一個(gè)數(shù)據(jù)表的創(chuàng)建,就自動(dòng)生成了該表的“增刪改查”功能及相關(guān)頁(yè)面,進(jìn)而隱藏了數(shù)據(jù)庫(kù)設(shè)計(jì)、前端開(kāi)發(fā)這些專業(yè)技術(shù)。其實(shí),這也就是我們常說(shuō)的表單引擎。雖然很多低代碼平臺(tái)將數(shù)據(jù)建模與表單展示合二為一,但通過(guò)這種方式自動(dòng)生成的表單只能實(shí)現(xiàn)最基礎(chǔ)的“增刪改查”頁(yè)面,用戶對(duì)界面展示內(nèi)容及形式的控制程度很低,無(wú)法滿足大部分軟件的需求,所以,低代碼平臺(tái)一般還會(huì)提供自定義頁(yè)面功能,用戶可根據(jù)需要在頁(yè)面上配置按鈕、圖表等元素,以滿足個(gè)性化需求。以明道云平臺(tái)為例,對(duì)單個(gè)業(yè)務(wù)實(shí)體創(chuàng)建界面及平臺(tái)自動(dòng)生成的新增該業(yè)務(wù)實(shí)體頁(yè)面分別如圖1和圖2所示。以學(xué)生、班級(jí)為例,配置了“班級(jí)”這個(gè)業(yè)務(wù)實(shí)體包含的字段,并設(shè)置了“班級(jí)”實(shí)體與已創(chuàng)建的“學(xué)生”實(shí)體的1:N對(duì)應(yīng)關(guān)系。
圖1 業(yè)務(wù)實(shí)體創(chuàng)建界面
圖2 自動(dòng)生成的業(yè)務(wù)實(shí)體頁(yè)面面
楊磊:我來(lái)說(shuō)一下平臺(tái)是如何支持另外三個(gè)要素的,業(yè)務(wù)流程是指為了實(shí)現(xiàn)某項(xiàng)目標(biāo),由多人合作,按照一定的規(guī)則、順序進(jìn)行的一系列活動(dòng),即進(jìn)行何種操作,如采購(gòu)申請(qǐng)、物品領(lǐng)用。在軟件中,業(yè)務(wù)流程的參與者可以是人,也可以是子應(yīng)用。低代碼平臺(tái)實(shí)現(xiàn)了可視化流程配置,用戶對(duì)觸發(fā)條件、處理節(jié)點(diǎn)、節(jié)點(diǎn)參與者進(jìn)行配置,實(shí)現(xiàn)自定義業(yè)務(wù)流程。圖3和圖4是以宜搭中的流程工具制作的學(xué)校采購(gòu)訂單流程和領(lǐng)用申請(qǐng)的業(yè)務(wù)流程配置界面。
圖3 學(xué)校采購(gòu)訂單流程(左) 圖4 領(lǐng)用申請(qǐng)的業(yè)務(wù)流程(右)
業(yè)務(wù)權(quán)限就是何種角色擁有何種權(quán)限,包括數(shù)據(jù)查看權(quán)限和數(shù)據(jù)操作權(quán)限,如教務(wù)人員可以管理所有學(xué)生信息,而班主任只能管理自己班級(jí)的學(xué)生信息。業(yè)務(wù)權(quán)限對(duì)低代碼平臺(tái)來(lái)說(shuō)尤其重要,新接手用戶擁有太大權(quán)限會(huì)給開(kāi)發(fā)工作帶來(lái)很大的風(fēng)險(xiǎn)。所以一定要確保為每個(gè)用戶提供他們所需的功能。
例如,需要開(kāi)發(fā)簡(jiǎn)單報(bào)表任務(wù)的用戶不應(yīng)該具有創(chuàng)建數(shù)據(jù)庫(kù)管理應(yīng)用的權(quán)限。所以,低代碼平臺(tái)都采用了非常經(jīng)典的基于角色的訪問(wèn)控制(RBAC)模型管理用戶權(quán)限,簡(jiǎn)單來(lái)說(shuō)就是將擁有相同權(quán)限的用戶添加為相同角色,通過(guò)為角色分配權(quán)限,實(shí)現(xiàn)“用戶—角色—權(quán)限”的授權(quán)模式。類似學(xué)校就是一個(gè)組織,下轄都會(huì)有各個(gè)學(xué)校部門的概念,所以,也可以將部門添加到某個(gè)角色,實(shí)現(xiàn)“用戶—部門—角色—權(quán)限”的授權(quán)模式。下頁(yè)圖5為用宜搭平臺(tái)對(duì)學(xué)??倓?wù)部門的物品領(lǐng)用流水進(jìn)行權(quán)限管控的頁(yè)面。
圖5 物品領(lǐng)用流水權(quán)限管控
統(tǒng)計(jì)報(bào)表就是在表單/流程表單中收集得到的數(shù)據(jù),可通過(guò)報(bào)表來(lái)進(jìn)行查看、分析和處理,查看從哪些方面量化單位整體活動(dòng)情況,如班級(jí)考勤、食堂用餐分析可以類比Excel中的透視圖,統(tǒng)計(jì)圖表由數(shù)據(jù)源、統(tǒng)計(jì)規(guī)則、展示形式定義,低代碼平臺(tái)也正是遵循這種方式,實(shí)現(xiàn)了統(tǒng)計(jì)圖表的可視化配置,甚至還可以做出比較專業(yè)的BI、儀表板應(yīng)用程序,非常適合學(xué)校根據(jù)數(shù)據(jù)變化趨勢(shì)做出決策和學(xué)校數(shù)據(jù)中心展示,圖6為借助明道云創(chuàng)建的統(tǒng)計(jì)圖表配置頁(yè)面。
圖6 明道云創(chuàng)建的統(tǒng)計(jì)圖表
解析“低代碼”的常見(jiàn)誤區(qū)
郭衛(wèi)丹:低代碼開(kāi)發(fā)平臺(tái),正在風(fēng)靡整個(gè)IT世界。畢竟能夠以最少的編碼快速開(kāi)發(fā)應(yīng)用的想法本身就很吸引人。但是,隨著它受歡迎程度的提升,圍繞著低代碼的各種誤區(qū)也隨之而來(lái)。我們希望通過(guò)破解這些低代碼的誤區(qū),幫助讀者更好地了解低代碼開(kāi)發(fā)平臺(tái)這個(gè)低門檻、高效率的軟件開(kāi)發(fā)新選擇。首先,業(yè)內(nèi)還是有很多人認(rèn)為低代碼僅適用于平民開(kāi)發(fā)者,大家怎么看?
邱元陽(yáng):我想大多數(shù)從業(yè)者可以使用低代碼來(lái)輕松開(kāi)發(fā)所有類型的應(yīng)用。在詳述這個(gè)觀點(diǎn)之前,讓我以學(xué)校為例,先看一下從事應(yīng)用開(kāi)發(fā)的人員可以分為哪幾類。
業(yè)務(wù)人員:包括沒(méi)有編碼知識(shí),但在校辦、教務(wù)、總務(wù)等學(xué)校行政服務(wù)領(lǐng)域的操作人員。
IT人員:包含學(xué)校信息科或信息技術(shù)教師。他們編碼經(jīng)驗(yàn)相對(duì)不高,但熟悉電子表格,并且具有JavaScript、PHP、Python等腳本語(yǔ)言的基本知識(shí)。
專業(yè)開(kāi)發(fā)者:與學(xué)校原先軟件業(yè)務(wù)有聯(lián)系的編碼專家,熟練掌握一門或多門編程語(yǔ)言及相關(guān)工具,經(jīng)過(guò)短時(shí)間的培訓(xùn)就能和學(xué)校現(xiàn)有使用低代碼平臺(tái)銜接。
與專業(yè)開(kāi)發(fā)者相對(duì)應(yīng),業(yè)內(nèi)一般將前兩者統(tǒng)稱為平民開(kāi)發(fā)者。事實(shí)上,平民開(kāi)發(fā)者和專業(yè)開(kāi)發(fā)者都可以使用低代碼開(kāi)發(fā)平臺(tái),但開(kāi)發(fā)的應(yīng)用程序的功能和復(fù)雜性會(huì)有所不同。使用低代碼平臺(tái),平民開(kāi)發(fā)者可以構(gòu)建非常簡(jiǎn)單的應(yīng)用,提供基本功能。專業(yè)開(kāi)發(fā)者可以開(kāi)發(fā)出更復(fù)雜的應(yīng)用,功能和復(fù)雜度都可以高于平民開(kāi)發(fā)者開(kāi)發(fā)的應(yīng)用。在這個(gè)過(guò)程中,低代碼開(kāi)發(fā)平臺(tái)幫助專業(yè)開(kāi)發(fā)者減少所需的手動(dòng)編碼量,縮短應(yīng)用交付的時(shí)間周期。簡(jiǎn)而言之,無(wú)論是平民開(kāi)發(fā)者還是專業(yè)開(kāi)發(fā)者,低代碼開(kāi)發(fā)平臺(tái)都可以從不同維度擴(kuò)展他們的能力,做出更有效能的應(yīng)用。
①采用低代碼/無(wú)代碼的單位必須具有一定的數(shù)字化基礎(chǔ),以學(xué)校為例,相關(guān)教職員工也必須具有最基礎(chǔ)的表單、流程等基礎(chǔ)信息素養(yǎng),客觀來(lái)講,所謂低代碼/無(wú)代碼,并不是像大家從字面上看到,可以什么都不用學(xué)就能開(kāi)發(fā)軟件。如果學(xué)校沒(méi)有數(shù)字化氛圍,教職工沒(méi)有對(duì)所從事的業(yè)務(wù)以及流程有深刻理解,根本無(wú)法生成應(yīng)用軟件,更不可能對(duì)學(xué)校數(shù)字化建設(shè)發(fā)展產(chǎn)生正面的作用。
②要對(duì)所在單位實(shí)際業(yè)務(wù)的痛點(diǎn)有深刻的認(rèn)知。學(xué)校相關(guān)職能人員都必須曾經(jīng)面對(duì)在教務(wù)、財(cái)務(wù)、科研等方面最關(guān)鍵的痛點(diǎn),這樣新應(yīng)用才能夠解決這些痛點(diǎn),否則開(kāi)發(fā)的新應(yīng)用將成為無(wú)源之水、無(wú)本之木。
③雖然低代碼開(kāi)發(fā)平臺(tái)能夠建立全新的數(shù)據(jù),但學(xué)校已經(jīng)積累了一定的數(shù)據(jù),如師生基礎(chǔ)數(shù)據(jù)、學(xué)校資源數(shù)據(jù)、選課數(shù)據(jù)、財(cái)務(wù)數(shù)據(jù)等,可以快速地理解應(yīng)用目的,通過(guò)低代碼開(kāi)發(fā),加快一些利用現(xiàn)有數(shù)據(jù)進(jìn)行數(shù)據(jù)打通的應(yīng)用開(kāi)發(fā)進(jìn)程。
④個(gè)性化需求更強(qiáng)的學(xué)校,更容易利用低代碼平臺(tái)開(kāi)發(fā)滿足自己個(gè)性化需求的應(yīng)用。開(kāi)發(fā)更快、代碼量更低,這是低代碼開(kāi)發(fā)平臺(tái)永遠(yuǎn)的追求,也是學(xué)校提升到智慧校園級(jí)別的體現(xiàn)。
郭衛(wèi)丹:從字面上看,低代碼開(kāi)發(fā)平臺(tái)似乎只適用于軟件開(kāi)發(fā)生命周期(SDLC)的開(kāi)發(fā)階段(如圖7),大家怎么理解?
圖7 軟件開(kāi)發(fā)生命周期(SDLC)
劉宗凡:事實(shí)并非如此。優(yōu)秀的低代碼平臺(tái),可以非常有效地支持整個(gè)應(yīng)用交付生命周期:設(shè)計(jì)、開(kāi)發(fā)、測(cè)試/調(diào)試、部署、運(yùn)維和迭代。這些平臺(tái)通常配備了可視化開(kāi)發(fā)工具,增加了一鍵式部署、自動(dòng)運(yùn)維等功能。這些功能通過(guò)在SDLC內(nèi)持續(xù)迭代應(yīng)用,縮短了產(chǎn)品的上線時(shí)間??梢酝ㄟ^(guò)領(lǐng)域模型的構(gòu)建開(kāi)發(fā)出不同類型和規(guī)模的應(yīng)用,如單位官網(wǎng)、APP、ERP等。其能應(yīng)對(duì)單位不同程度的復(fù)雜場(chǎng)景開(kāi)發(fā)需求,即能服務(wù)不同規(guī)模的用戶方?,F(xiàn)代的軟件開(kāi)發(fā)流程與協(xié)作模式,凝聚了數(shù)代軟件人的智慧,并形成了完整的生態(tài)系統(tǒng),廣泛服務(wù)于包括專業(yè)級(jí)軟件在內(nèi)的各類軟件項(xiàng)目。一些基于模型驅(qū)動(dòng)的低代碼平臺(tái)可適配業(yè)界主流的敏捷式開(kāi)發(fā)流程,覆蓋應(yīng)用開(kāi)發(fā)的全生命周期。另外,低代碼開(kāi)發(fā)雖然通常以云端形式面向開(kāi)發(fā)者,但也有單位從數(shù)據(jù)安全、完全取得軟件所有權(quán)方面考慮,希望進(jìn)行本地化服務(wù)器和軟件應(yīng)用部署。這也完成了一個(gè)完整的軟件開(kāi)發(fā)生命周期,國(guó)內(nèi)如騰訊云、活字格等低代碼開(kāi)發(fā)平臺(tái)都開(kāi)放了本地化部署模式。
具體從架構(gòu)模式上看,本地化低代碼開(kāi)發(fā)平臺(tái)往往由開(kāi)發(fā)設(shè)計(jì)器、服務(wù)器,以及第三方提供的協(xié)作服務(wù)器構(gòu)成,覆蓋專業(yè)級(jí)應(yīng)用開(kāi)發(fā)的全生命周期。通常情況下,開(kāi)發(fā)者使用低代碼開(kāi)發(fā)平臺(tái)開(kāi)發(fā)專業(yè)級(jí)應(yīng)用的流程如下:開(kāi)發(fā)者使用開(kāi)發(fā)設(shè)計(jì)器,啟動(dòng)開(kāi)發(fā)工作。如需與其他開(kāi)發(fā)者組成團(tuán)隊(duì),共同推進(jìn)項(xiàng)目開(kāi)發(fā),或者需要進(jìn)行版本管理,開(kāi)發(fā)者可以利用協(xié)作服務(wù)器(如碼云、GitHub等互聯(lián)網(wǎng)或安裝在局域網(wǎng)內(nèi)的Git服務(wù)器)和其他開(kāi)發(fā)者進(jìn)行協(xié)作。開(kāi)發(fā)者在自己的計(jì)算機(jī)上,通過(guò)設(shè)計(jì)器構(gòu)建數(shù)據(jù)表、服務(wù)端邏輯、頁(yè)面等元素,完成應(yīng)用開(kāi)發(fā)和調(diào)試后,可以利用一鍵發(fā)布功能,將應(yīng)用打包成可發(fā)布文件,部署到本地服務(wù)器上。其中,系統(tǒng)管理員可以通過(guò)管理控制臺(tái),可視化管理系統(tǒng)用戶和權(quán)限,并且完成網(wǎng)絡(luò)安全、自動(dòng)備份等配置工作。配置完成后,用戶即可通過(guò)瀏覽器、APP、微信、釘釘等多終端使用開(kāi)發(fā)者構(gòu)建的專業(yè)級(jí)應(yīng)用。從這里可以得出,一個(gè)可靠的低代碼開(kāi)發(fā)平臺(tái)可以完成處理軟件開(kāi)發(fā)生命周期所有階段的內(nèi)容。
郭衛(wèi)丹:軟件開(kāi)發(fā)生命周期可能還是比較專業(yè),對(duì)初學(xué)者來(lái)說(shuō)還有一個(gè)常見(jiàn)的誤區(qū):常常在低代碼和無(wú)代碼之間混淆,并傾向于互換使用它們,大家能談?wù)剬?duì)此的理解嗎?
倪俊杰:低代碼和無(wú)代碼這兩個(gè)術(shù)語(yǔ)本身具有誤導(dǎo)性,因?yàn)閮烧叩恼鎸?shí)區(qū)別不在于人們是否需要編碼。其區(qū)別主要在于使用這些平臺(tái)構(gòu)建應(yīng)用的人的類型。低代碼開(kāi)發(fā)平臺(tái)可以幫助平民開(kāi)發(fā)者在沒(méi)有任何編碼的情況下創(chuàng)建簡(jiǎn)單應(yīng)用,并且能夠讓專業(yè)開(kāi)發(fā)者通過(guò)少量編碼,快速構(gòu)建出更復(fù)雜的應(yīng)用。雖然無(wú)代碼平臺(tái)允許平民開(kāi)發(fā)者創(chuàng)建基本應(yīng)用程序,但它們對(duì)專業(yè)開(kāi)發(fā)者毫無(wú)用處。沒(méi)有足夠擴(kuò)展能力和編程接口的無(wú)代碼開(kāi)發(fā)平臺(tái)以及部分低代碼開(kāi)發(fā)平臺(tái)的使用者,在遇到復(fù)雜的單位業(yè)務(wù)要求時(shí),會(huì)遭遇之前開(kāi)發(fā)的工作量前功盡棄的風(fēng)險(xiǎn),這也是很多開(kāi)發(fā)者對(duì)低代碼開(kāi)發(fā)平臺(tái)產(chǎn)生疑慮的主要原因之一。
事實(shí)上,成熟的低代碼開(kāi)發(fā)平臺(tái)因?yàn)槠渥銐虻拈_(kāi)放性,可以支持開(kāi)發(fā)者像純代碼開(kāi)發(fā)一樣做出各種功能,包括但不限于連接第三方軟件,還可以硬件驅(qū)動(dòng)程序。以活字格為例,可以對(duì)接企業(yè)微信、釘釘?shù)鹊谌狡脚_(tái),還可對(duì)接用友、泛微等專業(yè)既存系統(tǒng),并能對(duì)接高拍儀、掃碼槍等硬件設(shè)備。我們可以想象低代碼開(kāi)發(fā)會(huì)在物聯(lián)網(wǎng)APP開(kāi)發(fā)中擁有廣闊的前景,尤其對(duì)硬件底層不太熟悉的學(xué)校用戶就不用再依賴各設(shè)備廠商和軟件廠商來(lái)幫其開(kāi)發(fā)物聯(lián)應(yīng)用,業(yè)務(wù)人員自己就可以上手,使業(yè)務(wù)部門可以聚焦應(yīng)用和技術(shù)開(kāi)發(fā)并口管理,組件高復(fù)用提升可靠度,降低多頭私有開(kāi)發(fā)、代碼質(zhì)量參差不齊帶來(lái)的安全風(fēng)險(xiǎn),應(yīng)用開(kāi)發(fā)安全和目的性更明確可靠,簡(jiǎn)化APP應(yīng)用管理的復(fù)雜性,為物聯(lián)網(wǎng)應(yīng)用APP的敏捷開(kāi)發(fā)提供了一條便捷的途經(jīng)。這也是低代碼開(kāi)發(fā)平臺(tái)與無(wú)代碼開(kāi)發(fā)平臺(tái)之間的具體差別之一。
楊磊:我再補(bǔ)充一點(diǎn),低代碼和無(wú)代碼之間的差異對(duì)許多人來(lái)說(shuō)的確是模糊的,因此導(dǎo)致人們認(rèn)為低代碼平臺(tái)僅具備有限的可定制性和可擴(kuò)展性,低代碼平臺(tái)無(wú)法通過(guò)精心設(shè)計(jì)的UI/UX設(shè)計(jì)來(lái)開(kāi)發(fā)大型應(yīng)用。事實(shí)上正相反,低代碼開(kāi)發(fā)平臺(tái)可以滿足高度復(fù)雜應(yīng)用需求。在業(yè)務(wù)邏輯方面,自定義代碼和重用業(yè)務(wù)邏輯的選項(xiàng)使開(kāi)發(fā)人員可以自由添加所有必需的功能,并對(duì)其進(jìn)行自定義,以滿足業(yè)務(wù)需求。除此之外,低代碼開(kāi)發(fā)平臺(tái)還提供了開(kāi)發(fā)引人入勝的UI/UX設(shè)計(jì)所需的所有工具,對(duì)行業(yè)理解較深的低代碼開(kāi)發(fā)平臺(tái)就內(nèi)置有與行業(yè)相關(guān)的大量素材、樣式主題以及所見(jiàn)即所得的頁(yè)面元素樣式設(shè)計(jì)器。通過(guò)低代碼開(kāi)發(fā)平臺(tái),開(kāi)發(fā)者可以開(kāi)發(fā)出包含內(nèi)部協(xié)作系統(tǒng)、用戶特色服務(wù)系統(tǒng)(如課程資源庫(kù)、課堂教師評(píng)價(jià)等)在內(nèi)的各種專業(yè)級(jí)大型應(yīng)用。如果單位的項(xiàng)目需要保持統(tǒng)一的VI,還需考慮在開(kāi)發(fā)平臺(tái)上引入統(tǒng)一的CSS樣式,如上頁(yè)圖8所示。
圖8 活字格低代碼開(kāi)發(fā)平臺(tái)對(duì)頁(yè)面進(jìn)行專業(yè)設(shè)計(jì)
結(jié)語(yǔ)
討論到這里,關(guān)于低代碼開(kāi)發(fā)平臺(tái)的誤區(qū)已經(jīng)被破解了。相信軟件公司或者使用單位自身的IT部門甚至業(yè)務(wù)人員都可以利用低代碼開(kāi)發(fā)平臺(tái),快速開(kāi)發(fā)出面向未來(lái)的應(yīng)用和擴(kuò)展。需要強(qiáng)調(diào)的是,雖然本欄目連續(xù)兩期都在討論低代碼開(kāi)發(fā),但要說(shuō)哪一種實(shí)現(xiàn)路徑占優(yōu),都是片面的,只是站的角度不同而已。在數(shù)字化發(fā)展的大潮中,低代碼無(wú)代碼開(kāi)發(fā)平臺(tái)要讓每個(gè)人,包括開(kāi)發(fā)者和普通業(yè)務(wù)人員,都能夠成為各自單位數(shù)字化過(guò)程中的主導(dǎo)者和構(gòu)建者。無(wú)論是原生開(kāi)發(fā)模式、SaaS模式,還是低代碼平臺(tái),變化的都是軟件開(kāi)發(fā)模式,而永遠(yuǎn)不變的是讓技術(shù)賦能業(yè)務(wù),為單位創(chuàng)造價(jià)值。對(duì)每位嘗試在學(xué)校數(shù)智化變革有所貢獻(xiàn)的教育工作者來(lái)說(shuō),對(duì)業(yè)務(wù)的理解能力、抽象能力、解決方案能力都值得不斷去提升。
了解更多精彩內(nèi)容,請(qǐng)關(guān)注我們公眾號(hào)【ID:xingongyecn】,或百度搜“新工業(yè)網(wǎng)”。