抖趣:Gartner的魔力象限之外,中國(guó)MXDP力量的崛起
時(shí)間:2022-06-01 17:48:01 | 來源:行業(yè)動(dòng)態(tài)
時(shí)間:2022-06-01 17:48:01 來源:行業(yè)動(dòng)態(tài)
業(yè)務(wù)每拓展一個(gè)新渠道,開發(fā)就要寫一套新代碼。
表面上來看,這是開發(fā)者與業(yè)務(wù)需求間的“亦步亦趨”,但在明眼人眼里,這是一種對(duì)于開發(fā)效能的直接浪費(fèi)。所謂單一功能的重復(fù)性實(shí)現(xiàn),這是身處當(dāng)下這個(gè)碎片化時(shí)代的開發(fā)者必須要面對(duì)的切身之痛,亦是多端、跨平臺(tái)開發(fā)的緣起之由。Android端的Java與Kotlin、IOS的Objective-C與Swift、Web端的 HTML /CSS/JavaScript,面對(duì)業(yè)務(wù)側(cè)的多端需求,終端間的各自為戰(zhàn)勢(shì)必帶來研發(fā)周期與投入成本的無限增長(zhǎng),跨平臺(tái)開發(fā)勢(shì)在必行。
在圍繞跨平臺(tái)技術(shù)模式與框架的討論愈演愈烈的同時(shí),業(yè)內(nèi)對(duì)于用戶體驗(yàn)一側(cè)的思考也逐漸深入。隨著漸進(jìn)式Web應(yīng)用程序、對(duì)話式應(yīng)用程序、沉浸式應(yīng)用程序與可穿戴式應(yīng)用程序的開發(fā)需求如雨后春筍般乍現(xiàn),傳統(tǒng)移動(dòng)應(yīng)用程序開發(fā)平臺(tái)逐步圍繞“跨平臺(tái)”與“多體驗(yàn)”兩大維度不斷轉(zhuǎn)變。
2019年,Gartner大筆一揮,將旗下原有的移動(dòng)應(yīng)用開發(fā)平臺(tái)MADP(Mobile App Development Platforms)魔力象限正式更名為多功能體驗(yàn)開發(fā)平臺(tái)MXDP(Multiexperience Development Platforms)。何為MXDP?Gartner對(duì)其的定義是:MXDP是一套為專業(yè)開發(fā)人員提供集成式前端開發(fā)工具與后端服務(wù),實(shí)現(xiàn)可擴(kuò)展與跨數(shù)字接觸點(diǎn)的應(yīng)用程序開發(fā)平臺(tái)。
通俗來講便是通過一個(gè)平臺(tái),解決多種設(shè)備、多點(diǎn)觸摸、多重交互等技術(shù)與應(yīng)用場(chǎng)景下的全部開發(fā)問題,以滿足用戶對(duì)于“多體驗(yàn)”的使用需求。而對(duì)于開發(fā)者與企業(yè)而言,使用MXDP開發(fā)平臺(tái)進(jìn)行應(yīng)用程序的開發(fā),他們所能獲得的便是更高的開發(fā)效率、更好的產(chǎn)品質(zhì)量以及更低的開發(fā)成本。
距離Gartner推出MXDP魔力象限已經(jīng)過去兩年,在這短短兩年的時(shí)間里,多體驗(yàn)開發(fā)市場(chǎng)的星星之火已然燎原。前有Mendix、Salesfoce、SAP等低代碼、CRM廠商向MXDP領(lǐng)域成功拓展,后有一眾初創(chuàng)企業(yè)不斷朝著這一領(lǐng)域前赴后繼。Gartner預(yù)計(jì)到2026年,每四家企業(yè)中將有三家使用MXDP來加快IT和業(yè)務(wù)融合團(tuán)隊(duì)成功交付數(shù)字化產(chǎn)品的速度。
MXDP的火在國(guó)外燒的火熱,在國(guó)內(nèi)關(guān)于MXDP的消息卻鮮有耳聞。但在12月2日字節(jié)跳動(dòng)旗下的火山引擎舉辦的新云·共未來云產(chǎn)品發(fā)布會(huì)上,應(yīng)用開發(fā)套件MARS的發(fā)布卻猶如一枚深水炸彈,打破了國(guó)內(nèi)MXDP領(lǐng)域的一潭靜水。在發(fā)布會(huì)之后,CSDN也采訪到了火山引擎大前端產(chǎn)品負(fù)責(zé)人董必勝,深度解析了火山引擎在MXDP領(lǐng)域打響的第一槍—應(yīng)用開發(fā)套件MARS(Multi-experience AppRealization Stack)。
(火山引擎大前端產(chǎn)品負(fù)責(zé)人董必勝照片)
意料之中,亦是情理之中 如果我們?cè)诿C6嗟闹袊?guó)企業(yè)中挑選一家去完成一款MXDP應(yīng)用開發(fā)平臺(tái)的研發(fā),相信許多人和筆者一樣,腦海中第一個(gè)蹦出來的答案便是字節(jié)跳動(dòng)?!八惴〞r(shí)代的APP工廠”,是少部分人對(duì)于字節(jié)跳動(dòng)的固有印象。雖然這個(gè)說法不準(zhǔn)確,但字節(jié)跳動(dòng)在短短9年時(shí)間里開發(fā)經(jīng)營(yíng)了100 APP,旗下?lián)碛卸兑?、今日頭條、飛書、西瓜視頻等一眾爆款應(yīng)用,它的APP敏捷開發(fā)能力確實(shí)很強(qiáng)。
既然能如此敏捷開發(fā)App,圍繞一款應(yīng)用從創(chuàng)意的誕生,到功能的開發(fā),再到最終的測(cè)試與落地,必然有一條明確且高效的生產(chǎn)線作為基礎(chǔ)。而字節(jié)跳動(dòng)如此高效產(chǎn)出APP應(yīng)用背后的秘密,便是火山引擎應(yīng)用開發(fā)套件MARS。董必勝在采訪中介紹到:從MARS的沉淀道路上來看,字節(jié)跳動(dòng)快速構(gòu)建APP的能力可以大致分為三個(gè)部分。第一是我們?cè)陬^條、抖音、西瓜等系列應(yīng)用開發(fā)過程中積攢了大量基礎(chǔ)能力建設(shè),例如掃一掃、音視頻、語音識(shí)別、動(dòng)畫特效等等能力,這些都可以在MARS上實(shí)現(xiàn)直接的快速?gòu)?fù)用;第二,在快速啟動(dòng)層面,我們提供了跨平臺(tái)的框架 腳手架,通過二者結(jié)合為不同的應(yīng)用場(chǎng)景提供框架,例如基于云原生能力的Native 跨端跨平臺(tái) 小程序 H5的組合;第三在項(xiàng)目研發(fā)迭代階段,MARS提供了大量工具以及檢測(cè)手段去保障項(xiàng)目能夠快速地交付上線與迭代。
圍繞多端場(chǎng)景的性能、體驗(yàn)、優(yōu)化和研發(fā),字節(jié)跳動(dòng)投入了大量資源去完成面向全棧的一系列技術(shù)能力建設(shè)。作為原生于字節(jié)跳動(dòng)內(nèi)部業(yè)務(wù)的應(yīng)用開發(fā)平臺(tái),抖音、頭條等APP皆是基于這一平臺(tái)進(jìn)行開發(fā)與迭代。在經(jīng)歷了內(nèi)部復(fù)雜業(yè)務(wù)歷練與極限場(chǎng)景的不斷打磨,字節(jié)跳動(dòng)最終決定將這一能力以產(chǎn)品的形式向外輸出,這便是MARS應(yīng)用開發(fā)平臺(tái)的由來。
MARS:多體驗(yàn)時(shí)代下的“全能戰(zhàn)士” 作為平臺(tái),火山引擎應(yīng)用開發(fā)套件MARS覆蓋了從研發(fā)、測(cè)試、發(fā)布、運(yùn)維再到運(yùn)營(yíng)的應(yīng)用全生命開發(fā)周期,并提供了面向客戶端場(chǎng)景的移動(dòng)研發(fā)解決方案,面向質(zhì)量保障場(chǎng)景的質(zhì)量解決方案,面向用戶體驗(yàn)監(jiān)測(cè)場(chǎng)景的APM解決方案,面向應(yīng)用搭建的低代碼解決方案,面向前端、后端、全棧工程師的Web研發(fā)解決方案以及面向項(xiàng)目協(xié)作的項(xiàng)目管理解決方案。讓“專人做專事”,通過MARS提供的一站式通用能力,幫助開發(fā)者更好地專注于業(yè)務(wù)研發(fā)之上。在極大提升開發(fā)效率的同時(shí),也進(jìn)一步降低了企業(yè)的開發(fā)成本。
移動(dòng)開發(fā): 為了滿足移動(dòng)領(lǐng)域?qū)τ诳缙脚_(tái)應(yīng)用的開發(fā)需求,目前有大量的APP應(yīng)用采用了開源Flutter框架作為解決方案。字節(jié)跳動(dòng)也不例外,目前字節(jié)內(nèi)部有70多個(gè)APP采用了Flutter作為跨端解決方案?;诂F(xiàn)有業(yè)務(wù)的嚴(yán)苛需求,開源版的Flutter框架已經(jīng)難以滿足,MARS技術(shù)團(tuán)隊(duì)針對(duì)Flutter框架進(jìn)行了性能優(yōu)化、應(yīng)用框架、容器化、研發(fā)流程、混合工程支持等工作,同時(shí)針對(duì)FPS、Timeline 等工具做了進(jìn)一步優(yōu)化。MARS也是目前國(guó)內(nèi)首個(gè)全面支持Flutter的開發(fā)平臺(tái),該平臺(tái)面向Flutter框架實(shí)現(xiàn)了全場(chǎng)景,全能力的匹配。從框架能力、通用技術(shù)組件,到面向Flutter提供的測(cè)試、監(jiān)控能力,開發(fā)者能夠通過MARS快速上手并熟練使用這一技術(shù)框架。
對(duì)于開發(fā)者而言,專注Coding往往是一件看似理所當(dāng)然,實(shí)則天方夜譚的事情。從底層基礎(chǔ)設(shè)施、環(huán)境配置,到故障排查、運(yùn)營(yíng)維護(hù),都需要消耗團(tuán)隊(duì)現(xiàn)有的人力來滿足業(yè)務(wù)需求。而通過MARS平臺(tái),開發(fā)者只需要專注于業(yè)務(wù)Coding,其余的工作全部交于系統(tǒng)托管。在MARS平臺(tái)中會(huì)有大量的自動(dòng)化工具發(fā)現(xiàn)開發(fā)過程中存在的問題,并告知錯(cuò)誤代碼的定位,開發(fā)者能夠基于這一定位確定后續(xù)的修復(fù)方案。而在應(yīng)用項(xiàng)目的后期測(cè)試過程中,火山引擎應(yīng)用開發(fā)套件MARS能夠提供大量性能測(cè)試工具、穩(wěn)定性工具幫助開發(fā)者進(jìn)行問題的排查,極大地優(yōu)化了項(xiàng)目的開發(fā)交付流程。
在移動(dòng)研發(fā)領(lǐng)域,項(xiàng)目交付是一場(chǎng)與時(shí)間的賽跑,“人們只會(huì)記住第一名”,這條規(guī)律放在市場(chǎng)上依然通用。談及MARS的開發(fā)效率,董必勝表示:通常情況下,市面上的絕大部分公司的移動(dòng)應(yīng)用業(yè)務(wù)上線周期以月為維度來計(jì)算。而在字節(jié)內(nèi)部,通過MARS應(yīng)用開發(fā)平臺(tái)我們做到了一周交付一個(gè)版本,這意味著我們比外面的公司快4倍甚至更多。在同樣的時(shí)間節(jié)點(diǎn),以同樣的資源投入,我們能夠保證自己能夠先市場(chǎng)一步而行。