亞寵展、全球?qū)櫸锂a(chǎn)業(yè)風(fēng)向標(biāo)——亞洲寵物展覽會(huì)深度解析
508
2025-03-31
本文目錄一覽:
ApaaS可以理解為paaS的子形式。aPaaS的全稱是應(yīng)用平臺(tái)即服務(wù)美國(guó)apaas考試是什么,意思是應(yīng)用平臺(tái)即服務(wù)。
Gartner將其定義為:“這是一種基于PaaS(平臺(tái)即服務(wù))的解決方案美國(guó)apaas考試是什么,支持應(yīng)用在云中的開(kāi)發(fā)、部署和運(yùn)行,為用戶提供軟件開(kāi)發(fā)中的基本工具,包括數(shù)據(jù)對(duì)象、權(quán)限管理、用戶界面等。”
阿里云社區(qū)
APaaS(應(yīng)用平臺(tái)即服務(wù))有以下兩個(gè)特點(diǎn)
提供快速開(kāi)發(fā)環(huán)境,用戶可以在幾個(gè)小時(shí)內(nèi)完成應(yīng)用的開(kāi)發(fā)、測(cè)試和部署,并可以隨時(shí)調(diào)整或更新。
低代碼或零代碼,非技術(shù)人員即可完成應(yīng)用開(kāi)發(fā)。
aPaaS vs PaaS
PaaS需要技術(shù)人員在本地完成應(yīng)用開(kāi)發(fā)和數(shù)據(jù)提供,然后部署到PaaS平臺(tái),再分發(fā)給用戶。
APaaS是PaaS的子模型。非技術(shù)人員可以直接在云中構(gòu)建、部署、使用、更新和管理應(yīng)用程序。
簡(jiǎn)介美國(guó)apaas考試是什么:?什么是低代碼?我們?yōu)槭裁葱枰痛a?低代碼會(huì)讓程序員失業(yè)嗎?本文總結(jié)了低代碼領(lǐng)域美國(guó)apaas考試是什么的基本概念、核心價(jià)值與行業(yè)現(xiàn)狀美國(guó)apaas考試是什么,帶美國(guó)apaas考試是什么你全面了解低代碼。
什么是低代碼
“Low-Code”是什么?如果你是第一次聽(tīng)說(shuō),沒(méi)準(zhǔn)也會(huì)跟我當(dāng)年從老板口中聽(tīng)到這個(gè)詞后的內(nèi)心戲一樣:啥?“Low-Code”?“Code”是指代碼我知道,但這個(gè)“Low”字是啥意思?不會(huì)是老板發(fā)現(xiàn)我最近趕工寫(xiě)的代碼很丑很“Low”吧... 想多了,老板怎么可能親自review代碼呢。那難道是指,“Low-level programming”里的“Low”?老板終于發(fā)現(xiàn)讓我等編程奇才整天堆Java業(yè)務(wù)代碼太浪費(fèi),要派我去閉關(guān)寫(xiě)一個(gè)高性能C語(yǔ)言網(wǎng)絡(luò)庫(kù)... 顯然也不是,老板哪能有這技術(shù)情懷呢。那到底是什么意思?作為一名搜商比情商還高的程序員,能問(wèn)Google的絕不會(huì)問(wèn)老板。于是我一頓操作后,不假思索地點(diǎn)開(kāi)了第一條搜索結(jié)果:Low-code development platform。
Wikipedia定義
從Wiki的這段定義中,我們可以提煉出幾個(gè)關(guān)鍵信息:
? 低代碼開(kāi)發(fā)平臺(tái)(LCDP)本身也是一種軟件,它為開(kāi)發(fā)者提供了一個(gè)創(chuàng)建應(yīng)用軟件的開(kāi)發(fā)環(huán)境。看到“開(kāi)發(fā)環(huán)境”幾個(gè)字是不是很親切?對(duì)于程序員而言,低代碼開(kāi)發(fā)平臺(tái)的性質(zhì)與IDEA、VS等代碼IDE(集成開(kāi)發(fā)環(huán)境)幾乎一樣,都是服務(wù)于開(kāi)發(fā)者的生產(chǎn)力工具。
? 與傳統(tǒng)代碼IDE不同的是,低代碼開(kāi)發(fā)平臺(tái)提供的是更高維和易用的可視化IDE。大多數(shù)情況下,開(kāi)發(fā)者并不需要使用傳統(tǒng)的手寫(xiě)代碼方式進(jìn)行編程,而是可以通過(guò)圖形化拖拽、參數(shù)配置等更高效的方式完成開(kāi)發(fā)工作。
Forrester定義
順著Wiki的描述還能發(fā)現(xiàn),原來(lái)“Low-Code”一詞早在2014年就由Forrester提出了,它對(duì)低代碼開(kāi)發(fā)平臺(tái)的始祖級(jí)定義是這樣的:
請(qǐng)點(diǎn)擊輸入圖片描述
相比Wiki的版本,這個(gè)定義更偏向于闡明低代碼所帶來(lái)的核心價(jià)值:
? 低代碼開(kāi)發(fā)平臺(tái)能夠?qū)崿F(xiàn)業(yè)務(wù)應(yīng)用的快速交付。也就是說(shuō),不只是像傳統(tǒng)開(kāi)發(fā)平臺(tái)一樣“能”開(kāi)發(fā)應(yīng)用而已,低代碼開(kāi)發(fā)平臺(tái)的重點(diǎn)是開(kāi)發(fā)應(yīng)用更“快”。更重要的是,這個(gè)快的程度是顛覆性的:根據(jù)Forrester在2016年的調(diào)研,大部分公司反饋低代碼平臺(tái)幫助他們把開(kāi)發(fā)效率提升了5-10倍。而且我們有理由相信,隨著低代碼技術(shù)、產(chǎn)品和行業(yè)的不斷成熟,這個(gè)提升倍數(shù)還能繼續(xù)上漲。
? 低代碼開(kāi)發(fā)平臺(tái)能夠降低業(yè)務(wù)應(yīng)用的開(kāi)發(fā)成本。一方面,低代碼開(kāi)發(fā)在軟件全生命周期流程上的投入都要更低(代碼編寫(xiě)更少、環(huán)境設(shè)置和部署成本也更簡(jiǎn)單);另一方面,低代碼開(kāi)發(fā)還顯著降低了開(kāi)發(fā)人員的使用門檻,非專業(yè)開(kāi)發(fā)者經(jīng)過(guò)簡(jiǎn)單的IT基礎(chǔ)培訓(xùn)就能快速上崗,既能充分調(diào)動(dòng)和利用企業(yè)現(xiàn)有的各方面人力資源,也能大幅降低對(duì)昂貴專業(yè)開(kāi)發(fā)者資源的依賴。
低代碼核心能力
基于上述的定義和分析,不難總結(jié)出如下這3條低代碼開(kāi)發(fā)平臺(tái)的核心能力:
請(qǐng)點(diǎn)擊輸入圖片描述
??全棧可視化編程:可視化包含兩層含義,一個(gè)是編輯時(shí)支持的點(diǎn)選、拖拽和配置操作,另一個(gè)是編輯完成后所及即所得(WYSIWYG)的預(yù)覽效果。傳統(tǒng)代碼IDE也支持部分可視化能力(如早年Visual Studio的MFC/WPF),但低代碼更強(qiáng)調(diào)的是全棧、端到端的可視化編程,覆蓋一個(gè)完整應(yīng)用開(kāi)發(fā)所涉及的各個(gè)技術(shù)層面(界面/數(shù)據(jù)/邏輯)。
??全生命周期管理:作為一站式的應(yīng)用開(kāi)發(fā)平臺(tái),低代碼支持應(yīng)用的完整生命周期管理,即從設(shè)計(jì)階段開(kāi)始(有些平臺(tái)還支持更前置的項(xiàng)目與需求管理),歷經(jīng)開(kāi)發(fā)、構(gòu)建、測(cè)試和部署,一直到上線后的各種運(yùn)維(e.g. 監(jiān)控報(bào)警、應(yīng)用上下線)和運(yùn)營(yíng)(e.g. 數(shù)據(jù)報(bào)表、用戶反饋)。
??低代碼擴(kuò)展能力:使用低代碼開(kāi)發(fā)時(shí),大部分情況下仍離不開(kāi)代碼,因此平臺(tái)必須能支持在必要時(shí)通過(guò)少量的代碼對(duì)應(yīng)用各層次進(jìn)行靈活擴(kuò)展,比如添加自定義組件、修改主題CSS樣式、定制邏輯流動(dòng)作等。一些可能的需求場(chǎng)景包括:UI樣式定制、遺留代碼復(fù)用、專用的加密算法、非標(biāo)系統(tǒng)集成。
不只是少寫(xiě)代碼
回到最初那個(gè)直擊心靈的小白問(wèn)題:Low-Code中的“Low”,到底是啥意思?答案已經(jīng)顯而易見(jiàn):既不是指抽象程度很低(相反,低代碼開(kāi)發(fā)方式的抽象程度要比傳統(tǒng)編程語(yǔ)言高一個(gè)level),也不是指代碼很low(也相反,低代碼所生成的代碼一般都經(jīng)過(guò)精心維護(hù)和反復(fù)測(cè)試,整體質(zhì)量強(qiáng)于大部分手寫(xiě)代碼),而是單純的“少寫(xiě)代碼” —— 只在少數(shù)需要的情況下才手寫(xiě)代碼,其他大部分時(shí)候都能用可視化等非代碼方式解決。
再往深一點(diǎn)兒看,低代碼不只是少寫(xiě)代碼而已:代碼寫(xiě)得少,bug也就越少(正所謂“少做少錯(cuò)”),因此開(kāi)發(fā)環(huán)節(jié)的兩大支柱性工作“趕需求”和“修bug”就都少了;要測(cè)的代碼少了,那么測(cè)試用例也可以少寫(xiě)不少;除了開(kāi)發(fā)階段以外,平臺(tái)還覆蓋了后續(xù)的應(yīng)用構(gòu)建、部署和管理,因此運(yùn)維操作也更少了(Low-Code → Low-Ops)。
然而,少并不是最終目的:如果單純只是想達(dá)到少的效果,砍需求減人力、降低質(zhì)量要求也是一樣的。低代碼背后的哲學(xué),是少即是多(Less is More),或者更準(zhǔn)確說(shuō)是多快好省(Do More with Less) —— 能力更多、上線更快、質(zhì)量更好,成本還更省,深刻踐行了阿里“既要,又要,還要”的價(jià)值觀精髓。
請(qǐng)點(diǎn)擊輸入圖片描述
平臺(tái)的職責(zé)與挑戰(zhàn)
上面說(shuō)的是低代碼給開(kāi)發(fā)者提供的能力與吸引力,那么作為服務(wù)的提供方與應(yīng)用的承載者,低代碼開(kāi)發(fā)平臺(tái)自身應(yīng)該承擔(dān)怎樣的職責(zé),其中又會(huì)遇到多大的挑戰(zhàn)?是否就一定要如阿里云所主張的那樣,“把復(fù)雜留給自己,把簡(jiǎn)單留給別人”?雖然這句話聽(tīng)起來(lái)很深明大義,但不知道大家有沒(méi)有想過(guò),為什么我們一定要抱著復(fù)雜不放,平白無(wú)故給自己找事?就不能直接干掉復(fù)雜,也給咱阿里云自己的員工留點(diǎn)簡(jiǎn)單嗎?是工作太容易就體現(xiàn)不出來(lái)KPI價(jià)值了,還是家里的飯菜不如公司的夜宵香?
冥思苦想許久后,我從熱力學(xué)第一定律中找到了答案:開(kāi)發(fā)一個(gè)應(yīng)用的總復(fù)雜度是恒定的,只能轉(zhuǎn)移而不可能憑空消失。要想讓開(kāi)發(fā)者做的更少,安心享受簡(jiǎn)單的快樂(lè),那么平臺(tái)方就得做的更多,默默承擔(dān)盡可能多的復(fù)雜度。就像一個(gè)滿身腱子肉的雜技男演員,四平八穩(wěn)地托舉著在高處旋轉(zhuǎn)與跳躍的女搭檔;上面的人顯得越輕盈越毫不費(fèi)力,下面的人就得越穩(wěn)重越用盡全力。當(dāng)然,不是說(shuō)上面的女演員就很輕松沒(méi)壓力,只是他們各自的分工不同,所承擔(dān)的復(fù)雜度也不一樣。
根據(jù)《人月神話》作者Fred Brooks的劃分,軟件開(kāi)發(fā)的復(fù)雜度可以劃分為本質(zhì)復(fù)雜度(Essential complexity )和偶然復(fù)雜度(Accidental complexity)。前者是解決問(wèn)題時(shí)固有的最小復(fù)雜度,跟你用什么樣的工具、經(jīng)驗(yàn)是否豐富、架構(gòu)好不好等都無(wú)關(guān),而后者就是除此之外在實(shí)際開(kāi)發(fā)過(guò)程中引入的復(fù)雜度。通常來(lái)說(shuō),本質(zhì)復(fù)雜度與業(yè)務(wù)要解決的特定問(wèn)題域強(qiáng)相關(guān),因此這里我把它稱為更好理解的“業(yè)務(wù)復(fù)雜度”;這部分復(fù)雜度不是任何開(kāi)發(fā)方法或工具能解決的,包括低代碼。而偶然復(fù)雜度一般與開(kāi)發(fā)階段的技術(shù)細(xì)節(jié)強(qiáng)相關(guān),因此我也相應(yīng)把它稱為“技術(shù)復(fù)雜度”;而這一部分復(fù)雜度,恰好就是低代碼所擅長(zhǎng)且適合解決的。
為開(kāi)發(fā)者盡可能屏蔽底層技術(shù)細(xì)節(jié)、減少不必要的技術(shù)復(fù)雜度,并支撐其更好地應(yīng)對(duì)業(yè)務(wù)復(fù)雜度(滿足靈活通用的業(yè)務(wù)場(chǎng)景需求),這是身為一個(gè)低代碼開(kāi)發(fā)平臺(tái)所應(yīng)該盡到的核心職責(zé)。
請(qǐng)點(diǎn)擊輸入圖片描述
在盡到上述職責(zé)的同時(shí),低代碼開(kāi)發(fā)平臺(tái)作為一個(gè)面向開(kāi)發(fā)者的產(chǎn)品,還需要致力于為開(kāi)發(fā)者提供簡(jiǎn)單直觀的極致開(kāi)發(fā)體驗(yàn)。這背后除了巨大的工作量,還得能在“強(qiáng)大”和“易用”這兩個(gè)很難兩全其美的矛盾點(diǎn)之間,努力找到一個(gè)符合自己產(chǎn)品定位與目標(biāo)客戶需求的平衡點(diǎn) —— 這也許是設(shè)計(jì)一個(gè)通用低代碼開(kāi)發(fā)平臺(tái)所面臨的最大挑戰(zhàn)。
三、低代碼相關(guān)概念對(duì)比
純代碼(Pro-Code / Custom-Code)
“純代碼”可能算是我杜撰的一個(gè)詞,更常見(jiàn)的說(shuō)法是-碼(Pro-Code)或定制代碼(Custom-Code);但意思都一樣,就是指?jìng)鹘y(tǒng)的以代碼為中心(Code-Centric)的開(kāi)發(fā)模式。之所以我選擇用“純代碼”,是因?yàn)槿绻谩?碼”會(huì)顯得似乎低代碼就不專業(yè)了一樣,而用“定制代碼”又容易讓人誤解成低代碼無(wú)法支持定制的自定義代碼。
當(dāng)然,更準(zhǔn)確的稱謂我認(rèn)為是“高代碼”(與低代碼恰好對(duì)應(yīng),只是名字太難聽(tīng),被我嫌棄了...),因?yàn)榧幢闶鞘褂脗鹘y(tǒng)的代碼IDE,有些開(kāi)發(fā)工作也支持(甚至更適合)以非代碼方式完成,比如:iOS端開(kāi)發(fā)時(shí)使用的SwiftUI界面設(shè)計(jì)器、服務(wù)端開(kāi)發(fā)數(shù)據(jù)庫(kù)應(yīng)用時(shí)使用的PowerDesigner建模工具。不過(guò)這部分可視化工作在傳統(tǒng)開(kāi)發(fā)模式下只是起輔助作用,最后通常也是生成開(kāi)發(fā)者可直接修改的代碼;開(kāi)發(fā)者仍然是以代碼為中心來(lái)開(kāi)展主要工作。
低代碼與純代碼之間的關(guān)系,其實(shí)跟視頻和文章之間很像:
低代碼就像是現(xiàn)代的“視頻”,大部分內(nèi)容都由直觀易理解、表達(dá)能力強(qiáng)的圖片組成,因此更容易被大眾所接受。但與此同時(shí),視頻也不是死板得只能有圖片,完全可以添加少量文字(如字幕、標(biāo)注)來(lái)彌補(bǔ)圖片表達(dá)不夠精確的問(wèn)題。BTW,關(guān)于“圖”和“文字”之間的辯證關(guān)系,可以進(jìn)一步參考《架構(gòu)制圖:工具與方法論》[1]這篇文章中的相關(guān)描述。
純代碼則更像是傳統(tǒng)的“文章”,雖然很久以來(lái)都一直是信息傳播的唯一媒介,但自從視頻技術(shù)誕生以及相應(yīng)軟硬件基礎(chǔ)設(shè)施的普及以來(lái),便逐漸開(kāi)始被搶走了風(fēng)頭。如今,視頻已成為大部分人獲取信息的主要渠道(從電視電影到B站抖音),而經(jīng)常讀書(shū)讀文章的人卻越來(lái)越少。但不可否認(rèn)的是,文章依然有它存在的意義和受眾(不然我也不會(huì)費(fèi)這勁敲這么多字了),即使“市場(chǎng)份額”一直在被擠壓,但永遠(yuǎn)會(huì)有它立足的空間。
請(qǐng)點(diǎn)擊輸入圖片描述
如果按上面這種類比關(guān)系推導(dǎo),低代碼未來(lái)也會(huì)遵循與視頻類似的發(fā)展軌跡,超越純代碼成為主流開(kāi)發(fā)模式。Gartner的預(yù)測(cè)也表達(dá)了相同的觀點(diǎn):到2024年,所有應(yīng)用程序開(kāi)發(fā)活動(dòng)當(dāng)中的65%將通過(guò)低代碼的方式完成,同時(shí)75%的大型企業(yè)將使用至少四種低代碼開(kāi)發(fā)工具進(jìn)行應(yīng)用開(kāi)發(fā)。
但同樣地,就像是視頻永遠(yuǎn)無(wú)法取代文章一樣,低代碼也永遠(yuǎn)無(wú)法徹底取代純代碼開(kāi)發(fā)方式。未來(lái)低代碼和純代碼方式將以互補(bǔ)的形態(tài)長(zhǎng)期共存,各自在其所適合的業(yè)務(wù)場(chǎng)景中發(fā)光發(fā)熱。在后面的“低代碼業(yè)務(wù)場(chǎng)景”章節(jié),會(huì)詳細(xì)列出哪些場(chǎng)景在現(xiàn)階段更適合用低代碼模式開(kāi)發(fā)。
零代碼(Zero-Code / No-Code)
從分類的完備性角度來(lái)看,有“純代碼”自然也應(yīng)該有完全相反的“零代碼”(也稱為“無(wú)代碼”)。零代碼就是完全不需要寫(xiě)代碼的應(yīng)用開(kāi)發(fā)平臺(tái),但這并不代表零代碼就比低代碼更高級(jí)和先進(jìn),它只是做了一個(gè)更極端的選擇而已:徹底擁抱簡(jiǎn)單的圖形可視化,完全消滅復(fù)雜的文本代碼。選擇背后的原因是,零代碼開(kāi)發(fā)平臺(tái)期望能盡可能降低應(yīng)用開(kāi)發(fā)門檻,讓人人都能成為開(kāi)發(fā)者(注意:開(kāi)發(fā) ≠ 寫(xiě)代碼),包括完全不懂代碼的業(yè)務(wù)分析師、用戶運(yùn)營(yíng),甚至是產(chǎn)品經(jīng)理(不懂裝懂可不算懂)。
即便是專業(yè)開(kāi)發(fā)者,在技術(shù)分工越來(lái)越精細(xì)的趨勢(shì)下(前端/后端/算法/SRE/數(shù)據(jù)分析..),也很難招到一個(gè)能獨(dú)立開(kāi)發(fā)和維護(hù)整套復(fù)雜應(yīng)用的全棧工程師。但零代碼可以改變這一切:無(wú)論是Java和JavaScript傻傻分不清楚的技術(shù)小白,還是精通深度學(xué)習(xí)但沒(méi)時(shí)間學(xué)習(xí)Web開(kāi)發(fā)的算法大牛,都可以通過(guò)零代碼實(shí)現(xiàn)自己的技術(shù)夢(mèng)或全棧夢(mèng)。“改變世界的idea已有,就差一個(gè)程序員了”,這句玩笑話或許真的可以成真;哦不,甚至都用不著程序員,有idea的人自己就能上。
請(qǐng)點(diǎn)擊輸入圖片描述
當(dāng)然,所有選擇都要付出代價(jià),零代碼也不例外。完全拋棄代碼的代價(jià),就是平臺(tái)能力與靈活性受限:
? 一方面,可視化編輯器的表達(dá)能力遠(yuǎn)不及圖靈完備的通用編程語(yǔ)言,不引入代碼根本沒(méi)法實(shí)現(xiàn)靈活的定制與擴(kuò)展(當(dāng)然,理論上也可以做成Scrach/Blockly那樣的圖形編程語(yǔ)言,但那樣不過(guò)是換一種形式在手寫(xiě)代碼而已)。
? 另一方面,由于目標(biāo)受眾是非專業(yè)開(kāi)發(fā)人員,平臺(tái)能支持的操作會(huì)更趨于“傻瓜化”(e.g. 頁(yè)面只支持大塊業(yè)務(wù)組件的簡(jiǎn)單堆疊,不支持細(xì)粒度原子組件和靈活的CSS布局定義),同時(shí)也只會(huì)透出相對(duì)“親民化”的模型和概念(e.g. 使用“表格”表示數(shù)據(jù),而不是用“數(shù)據(jù)庫(kù)”),無(wú)法支撐強(qiáng)大專業(yè)的底層開(kāi)發(fā)原語(yǔ)和編程理念。
請(qǐng)點(diǎn)擊輸入圖片描述
雖然零代碼與狹義上的低代碼有著上述明顯差異,但從廣義上來(lái)說(shuō),零代碼可以當(dāng)作低代碼的一個(gè)子集。Gartner在其相關(guān)調(diào)研報(bào)告中,就是將“No Code”劃在了范圍更廣的低代碼應(yīng)用平臺(tái)“LCAP”(Low-Code Application Platform)中。而當(dāng)前市面上很多通用的低代碼開(kāi)發(fā)平臺(tái),也都兼具一定程度的零代碼能力;比如低代碼領(lǐng)域領(lǐng)頭羊Mendix,既提供了簡(jiǎn)單易用的零代碼Web IDE - Mendix Studio,也包括一個(gè)功能更強(qiáng)大的低代碼桌面IDE - Mendix Studio Pro。
HpaPaaS(高生產(chǎn)力應(yīng)用PaaS)
上文提到,“Low-Code”一詞是拜Forrester所賜。作為同樣是國(guó)際知名調(diào)研機(jī)構(gòu)(a.k.a 造詞小能手)的Gartner,顯然不會(huì)輕易在這場(chǎng)可能決定低代碼領(lǐng)域江湖地位的新概念作詞大賽中認(rèn)輸,于是也于2017年發(fā)明了“HpaPaaS”(High-productivity application Platform as a Service)這個(gè)聽(tīng)上去更高大上的縮寫(xiě)詞。
按照Gartner的定義,HpaPaaS是一種支持聲明式、模型驅(qū)動(dòng)設(shè)計(jì)和一鍵部署的平臺(tái),提供了云上的快速應(yīng)用開(kāi)發(fā)(RAD)、部署和運(yùn)行特性;這顯然與低代碼的定義如出一轍。但事實(shí)證明,名字起得太專業(yè)并不見(jiàn)得是好事,“HpaPaas”最終還是敗給了起源更早、更接地氣也更順口的“Low-Code”:從2019年開(kāi)始,Gartner在其相關(guān)調(diào)研報(bào)告中也開(kāi)始全面采用“Low-Code”一詞(如LCAP),親手為“HpaPaaS”打上了 @deprecated 印記。
請(qǐng)點(diǎn)擊輸入圖片描述
圖源:What’s the difference between SaaS / IaaS / PaaS / aPaaS / HpaPaaS?
值得補(bǔ)充的是,“HpaPaaS“這個(gè)詞也并非橫空出世,而是傳承自更早之前Gartner提出的“aPaaS”,它倆之間的關(guān)系是:HpaPaaS只是aPaaS的一個(gè)子類;除了HpaPaaS這種通過(guò)低代碼實(shí)現(xiàn)的高生產(chǎn)力應(yīng)用開(kāi)發(fā)平臺(tái)以外,aPaaS還包括面向純代碼的傳統(tǒng)應(yīng)用開(kāi)發(fā)平臺(tái)(High-control aPaaS,即可控度更高的純代碼開(kāi)發(fā)方式)。
不值得但就想八卦一下的是,“aPaaS”這個(gè)詞也非憑空捏造,而是與云計(jì)算的興起淵源頗深。相信各位云道中人都已猜到,aPaaS與IaaS/PaaS/SaaS這些云計(jì)算遠(yuǎn)古概念是一脈相承的:aPaaS介于PaaS和SaaS之間,相比PaaS提供的服務(wù)更偏應(yīng)用,但又不像SaaS一樣提供現(xiàn)成的軟件服務(wù)(更詳細(xì)的說(shuō)明可參考配圖來(lái)源文章)。
四、為什么需要低代碼
低代碼是什么可能并沒(méi)那么重要,畢竟在這個(gè)信息爆炸的世界,永遠(yuǎn)不缺少新奇而又短命的事物。大部分所謂的新技術(shù)都只是曇花一現(xiàn):出現(xiàn)了,被看到了;大部分人“哦”了一聲,已閱但表示不感興趣;小部分人驚嘆于它的奇思妙想,激動(dòng)地點(diǎn)了個(gè)贊后,回過(guò)頭來(lái)該用什么還是什么。真正決定新技術(shù)是否能轉(zhuǎn)化為新生產(chǎn)力的,永遠(yuǎn)不是技術(shù)本身有多么優(yōu)秀和華麗,而是它是否真的被需要,即:為什么需要低代碼?如果用不同的主語(yǔ)填充上面這個(gè)問(wèn)句(冷知識(shí):這叫做“延遲主語(yǔ)初始化”),可以更全面地看待這個(gè)問(wèn)題:
為什么「市場(chǎng)」需要低代碼?
在這個(gè)大爺大媽都滿嘴“互聯(lián)網(wǎng)+”和“數(shù)字化轉(zhuǎn)型”的時(shí)代,企業(yè)越來(lái)越需要通過(guò)應(yīng)用(App)來(lái)改善企業(yè)內(nèi)部的信息流轉(zhuǎn)、強(qiáng)化與客戶之間的觸點(diǎn)連接。然而,誕生還不太久的IT信息時(shí)代,也正面臨著與我國(guó)社會(huì)主義初級(jí)階段類似的供需關(guān)系矛盾:落后的軟件開(kāi)發(fā)生產(chǎn)力跟不上人民日益增長(zhǎng)的業(yè)務(wù)需求。
請(qǐng)點(diǎn)擊輸入圖片描述
Gartner預(yù)測(cè),到2021年應(yīng)用開(kāi)發(fā)需求的市場(chǎng)增長(zhǎng)將至少超過(guò)企業(yè)IT交付能力的5倍。面對(duì)如此巨大的IT缺口,如果沒(méi)有一種革命性的“新生產(chǎn)力”體系,很難想象僅憑現(xiàn)有傳統(tǒng)技術(shù)體系的發(fā)展延續(xù)就能徹底解決問(wèn)題。而低代碼技術(shù)正是帶著這樣的使命而降臨,期望通過(guò)以下幾個(gè)方面徹底革新應(yīng)用開(kāi)發(fā)生產(chǎn)力,拯救差一點(diǎn)就要邁入水深火熱的IT世界:
提效降本 質(zhì)量保障
雖然軟件行業(yè)一直在高速發(fā)展,新的語(yǔ)言、框架和工具層出不窮,但作為從業(yè)者我們不得不承認(rèn):軟件開(kāi)發(fā)仍處于手工作坊階段,效率低、人力成本高、質(zhì)量不可控。項(xiàng)目延期交付已成為行業(yè)常態(tài),而瓶頸幾乎總是開(kāi)發(fā)人員(對(duì)機(jī)器能解決的問(wèn)題都不是問(wèn)題);優(yōu)秀的開(kāi)發(fā)人才永遠(yuǎn)是稀缺資源,還賊貴;軟件質(zhì)量缺陷始終無(wú)法收斂,線上故障頻發(fā)資損不斷。
相比而言,傳統(tǒng)制造業(yè)經(jīng)過(guò)幾百年工業(yè)革命的發(fā)展,大部分早已擺脫了對(duì)“人”的強(qiáng)依賴:從原料輸入到制品輸出,中間是各種精密儀器和自動(dòng)化流水線的穩(wěn)定支撐,真正實(shí)現(xiàn)生產(chǎn)的標(biāo)準(zhǔn)化和規(guī)模化。雖然信息化號(hào)稱是人類的第三次工業(yè)革命,但以軟件行業(yè)目前的狀況,遠(yuǎn)遠(yuǎn)還沒(méi)到達(dá)成熟的“工業(yè)化”階段。
所以,親愛(ài)的程序員朋友,當(dāng)你與前端聯(lián)調(diào)了一上午接口,又與產(chǎn)品撕逼了一下午需求,再與自己的bug抗?fàn)幜艘徽恚貌蝗菀锥萑雺?mèng)鄉(xiāng)又被一連串報(bào)警短信吵醒時(shí),是否有抬頭對(duì)著星空憧憬過(guò):“I have a dream... that one day,軟件開(kāi)發(fā)也能像工業(yè)制品一樣,批量流水化生產(chǎn),穩(wěn)定高效沒(méi)煩惱。” 事到如今,不管你有沒(méi)有意識(shí)到,這個(gè)憧憬正在慢慢變成現(xiàn)實(shí)。
請(qǐng)點(diǎn)擊輸入圖片描述
是的,低代碼正在將應(yīng)用軟件開(kāi)發(fā)過(guò)程工業(yè)化:每個(gè)低代碼開(kāi)發(fā)平臺(tái)都是一個(gè)技術(shù)密集型的應(yīng)用工廠,所有項(xiàng)目相關(guān)人員都在同一條產(chǎn)線內(nèi)緊密協(xié)作。開(kāi)發(fā)主力不再是熟知for循環(huán)一百種寫(xiě)法的技術(shù)Geek,而是一群心懷想法業(yè)務(wù)sense十足的應(yīng)用Maker。借助應(yīng)用工廠中各種成熟的基礎(chǔ)設(shè)施、現(xiàn)成的標(biāo)準(zhǔn)零件、自動(dòng)化的裝配流水線,開(kāi)發(fā)者只需要專注于最核心的業(yè)務(wù)價(jià)值即可。即便是碰到非標(biāo)需求,也可以隨時(shí)自己動(dòng)手,用最靈活的手工定制(代碼)方式來(lái)解決各種邊角問(wèn)題。
擴(kuò)大應(yīng)用開(kāi)發(fā)勞動(dòng)力
通過(guò)讓大部分開(kāi)發(fā)工作可以僅通過(guò)簡(jiǎn)單的拖拽與配置完成,低代碼(包括零代碼)顯著降低了使用者門檻,讓企業(yè)能夠充分利用前面所提到的平民開(kāi)發(fā)者資源。部分純零代碼需求場(chǎng)景下,低代碼還能讓業(yè)務(wù)人員實(shí)現(xiàn)自助式(self-service)應(yīng)用交付,既解決了傳統(tǒng)IT交付模式下的任務(wù)堆積(backlog)問(wèn)題,避免稀缺的專業(yè)開(kāi)發(fā)資源被大量簡(jiǎn)單、重復(fù)性的應(yīng)用開(kāi)發(fā)需求所侵占,也能讓業(yè)務(wù)人員真正按自己的想法去實(shí)現(xiàn)應(yīng)用,擺脫交由他人開(kāi)發(fā)時(shí)不可避免的桎梏。
請(qǐng)點(diǎn)擊輸入圖片描述
至此,應(yīng)用開(kāi)發(fā)能力不再是少數(shù)專業(yè)開(kāi)發(fā)者的專利和特權(quán),且今后所需要的技能門檻與擁有成本也會(huì)越來(lái)越低,真正實(shí)現(xiàn)所謂的“技術(shù)民主化”(democratization of technology)。
加強(qiáng)開(kāi)發(fā)過(guò)程的溝通協(xié)作
多方調(diào)查結(jié)果顯示,軟件項(xiàng)目失敗的最主要原因之一就是缺乏溝通(poor communication)。傳統(tǒng)開(kāi)發(fā)模式下,業(yè)務(wù)、產(chǎn)品、設(shè)計(jì)、開(kāi)發(fā)、測(cè)試與運(yùn)維人員各司其職,且各有一套領(lǐng)域內(nèi)的工具和語(yǔ)言,長(zhǎng)久以來(lái)很容易形成一個(gè)個(gè)“豎井”(silos),讓跨職能的溝通變得困難而低效。這也是為什么當(dāng)前熱門的敏捷開(kāi)發(fā)和DevOps都在強(qiáng)調(diào)溝通(前者是協(xié)同Biz與Dev,而后者是協(xié)同Dev和Ops),而經(jīng)典的DDD領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)也主張通過(guò)“統(tǒng)一語(yǔ)言”來(lái)減少業(yè)務(wù)與技術(shù)人員之間的溝通不一致。
請(qǐng)點(diǎn)擊輸入圖片描述
有了低代碼后,這一狀況將得到根本改善:上述各角色都可以在同一個(gè)低代碼開(kāi)發(fā)平臺(tái)上緊密協(xié)作(甚至可以是同一個(gè)人),這種全新的協(xié)作模式不僅打破了職能豎井,還能通過(guò)統(tǒng)一的可視化語(yǔ)言和單一的應(yīng)用表示(頁(yè)面/數(shù)據(jù)/邏輯),輕松對(duì)齊項(xiàng)目各方對(duì)應(yīng)用形態(tài)和項(xiàng)目進(jìn)度的理解,實(shí)現(xiàn)更終極的敏捷開(kāi)發(fā)模式,以及在傳統(tǒng)DevOps基礎(chǔ)之上更進(jìn)一步的BizDevOps[2]。
統(tǒng)一開(kāi)發(fā)平臺(tái)下的聚合效應(yīng)
低代碼嘗試將所有與應(yīng)用開(kāi)發(fā)相關(guān)活動(dòng)都收斂到同一個(gè)平臺(tái)(one platform)上后,將會(huì)產(chǎn)生更多方面的聚合效應(yīng)與規(guī)模收益:
??人員聚合:除了上一點(diǎn)所提到的各職能角色緊密協(xié)作以外,人員聚合到統(tǒng)一的低代碼開(kāi)發(fā)平臺(tái)進(jìn)行作業(yè)后,還能促進(jìn)整個(gè)項(xiàng)目流程的標(biāo)準(zhǔn)化、規(guī)范化和統(tǒng)一化。
??應(yīng)用聚合:一方面,新應(yīng)用的架構(gòu)設(shè)計(jì)、資產(chǎn)復(fù)用、相互調(diào)用變得更容易;另一方面,各應(yīng)用的數(shù)據(jù)都天然互通,同時(shí)平臺(tái)外數(shù)據(jù)也能通過(guò)集成能力進(jìn)行打通,徹底消除企業(yè)的數(shù)據(jù)孤島問(wèn)題。
??生態(tài)聚合:當(dāng)?shù)痛a開(kāi)發(fā)平臺(tái)聚合了足夠多的開(kāi)發(fā)者和應(yīng)用后,將形成一個(gè)巨大的、連接一切、有無(wú)限想象力的生態(tài)體系,徹底放飛低代碼的價(jià)值。
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請(qǐng)聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時(shí)內(nèi)刪除侵權(quán)內(nèi)容。
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請(qǐng)聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時(shí)內(nèi)刪除侵權(quán)內(nèi)容。