王亞偉,華為云devcloud研發(fā)技術(shù)總監(jiān)。他將一杯咖啡,推到老同學(xué)面前。“一杯咖啡吸收宇宙能量”是華為的企業(yè)文化,王亞偉深得此精髓。“開發(fā)者并不在乎從松江到張江,但他們時刻想著什么時候‘內(nèi)環(huán)’通車。”或許,這只是大咖之間才能聽懂的對話。畢業(yè)之后,老同學(xué)一直在研究arm架構(gòu),他所說的 “內(nèi)環(huán)”與交通無關(guān),但與距離有關(guān)。而這正是王亞偉此行的目的,華為云cloudide的研發(fā)此時已經(jīng)啟動。
沒有任何差別,甚至…
華為開發(fā)者大會2020(cloud)期間,王亞偉面向全球開發(fā)者介紹了cloudide。作為華為云devcloud開發(fā)平臺的核心組件之一,cloudide一改此前桌面ide臃腫笨重的形象,也一改此前磨蹭拖沓的形象。當(dāng)然,還有“交通”問題,cloudide打通了編程的開發(fā)態(tài)和運(yùn)行態(tài),即開篇所說的“內(nèi)環(huán)”通車,x86平臺和鯤鵬平臺之間將不再有“異地戀”的相思之苦。
“鯤鵬920非常強(qiáng)大,完全感受不到與x86系統(tǒng)的任何差別,甚至在某些場景中表現(xiàn)得更好。”在王亞偉的印象中,arm多年來一直蜷縮在智能移動終端、物聯(lián)網(wǎng)終端,或者樹莓派(rpi)等單片機(jī)電腦中,業(yè)內(nèi)并沒有將其應(yīng)用于服務(wù)器的先例。
此時,王亞偉和他的團(tuán)隊(duì)正在進(jìn)行cloudide的原型研發(fā),并第一次將cloudide內(nèi)核部署在基于鯤鵬920的服務(wù)器中。當(dāng)然,這也使王亞偉真正了解到鯤鵬920的實(shí)力。
事實(shí)上,cloudide背后有一些很復(fù)雜的語言服務(wù),針對于java、python和c 等語言服務(wù),語言服務(wù)需要對全量代碼進(jìn)行解析,更需要很強(qiáng)大的算力來支持。而這一次部署也徹底打消了王亞偉此前對arm的疑慮,用王亞偉的話來描述:“但僅僅一個小時,團(tuán)隊(duì)就擦掉了所有問號。”
身為華為云devcloud研發(fā)技術(shù)總監(jiān),王亞偉此前曾就職于英特爾、微軟等公司。他回憶華為云devcloud研發(fā)團(tuán)隊(duì)第一次將cloudide原型系統(tǒng)部署在基于鯤鵬920處理器的服務(wù)器上時是一年前,不經(jīng)意間,王亞偉又透露了兩個信息,而將這兩個信息捏合在一起,即可還原當(dāng)時的研發(fā)進(jìn)度,cloudide系統(tǒng)幾乎與鯤鵬處理器同時起步。或者說,鯤鵬處理器幾乎與鯤鵬開發(fā)者生態(tài)同時起步,從一開始,鯤鵬就是一個極為龐大、極具顛覆性的構(gòu)想。
不可拒絕的ide之輕
確實(shí),華為云cloudide就是為了鯤鵬生態(tài)而生。但在此之前,可先回顧開發(fā)者工具的演進(jìn)歷史。通常認(rèn)為,ide(集成開發(fā)環(huán)境)的前身是代碼編輯器??扇绱吮扔?就如“關(guān)老爺”手中的“青龍偃月刀”,代碼編輯器就是程序員安身立命的武器。
而此后出現(xiàn)的桌面ide,雖并未取代代碼編輯器,但提供了更強(qiáng)大的代碼理解和代碼調(diào)試能力。2015年,微軟推出visual studio code,這可稱一款劃時代的產(chǎn)品,其幾乎兼容了代碼編輯器和桌面ide的能力。
當(dāng)然,此時的ide并也沒有擺脫臃腫笨重的形象。桌面ide的前臺與后臺緊耦合,對電腦配置有極高的要求。稍加留意,如果您發(fā)現(xiàn)身邊有人在使用七八公斤的17寸筆記本,他不是專業(yè)游戲玩家,就多半是資深軟件開發(fā)工程師。
言歸正傳。重量級的華為云cloudide卻是一款“輕量級webide”,不僅具備visual studio code的能力,更可為開發(fā)者提供在線編程體驗(yàn),開發(fā)者甚至不用在本地安裝任何程序,只需打開瀏覽器即可進(jìn)行編碼和調(diào)試?;蛘哒f,cloudide的原理類似于虛擬桌面,其將編碼環(huán)境與ide環(huán)境進(jìn)行解耦,甚至借助一臺智能手機(jī),也能進(jìn)行編碼調(diào)試,這或許才是真正的“拎包入住”或者“開袋即食”的體驗(yàn)。
兩點(diǎn)之間 cloudide的距離最短
延伸此話題。“輕量級”的華為云cloudide,不只是輕盈,更是輕巧。鯤鵬處理器的基因是arm架構(gòu),但此前基于x86架構(gòu)的ide平臺,似乎對arm并不友好。最為現(xiàn)實(shí)的情況是,arm開發(fā)者往往不在進(jìn)行腦力勞動,而更多的是在進(jìn)行體力勞動:他們并不是在編程,而是一直在“代碼搬家”的路上,“碼農(nóng)”的形象用在他們身上尤為貼切。
而最讓這些“碼農(nóng)”崩潰的場景是:開發(fā)者使用基于x86架構(gòu)的代碼編輯器,之后各顯神通進(jìn)行“代碼搬家”,將程序遷移至基于arm架構(gòu)的編譯環(huán)境。運(yùn)行測試過程中如發(fā)現(xiàn)bug,需再將程序回遷至原環(huán)境進(jìn)行修改。如此往復(fù),可能每天最多要“折返跑”百次以上。
以專業(yè)語言解釋,此即是上述所說的“內(nèi)環(huán)割裂”。“編碼-編譯-調(diào)試-測試-編碼”被稱為開發(fā)“內(nèi)環(huán)”,此前arm與x86之間,老死不相往來,一直處于“內(nèi)環(huán)割裂”狀態(tài)。按下f5快捷鍵,本可以解決的問題,卻需要反復(fù)搬家。
當(dāng)然,上述情景肯定不會在cloudide繼續(xù)出現(xiàn),f5快捷鍵恢復(fù)了其價值,而且會被迅速磨平。華為云cloudide可在線創(chuàng)建編碼環(huán)境,可在瀏覽器中進(jìn)行編碼和調(diào)試,其打通了任督二脈,即打通了編程開發(fā)態(tài)和運(yùn)行態(tài)。
也就是說,在x86和鯤鵬之間,cloudide的距離最短。開發(fā)者將不再有“異地戀”的相思之苦。甚至開發(fā)者并不會感受到云端技術(shù)架構(gòu)是x86,還是鯤鵬。因?yàn)樵谌A為云的定義中,開發(fā)者關(guān)注鯤鵬是一種狀態(tài),開發(fā)者無感于鯤鵬的存在才是一種更高的境界。
編程,其實(shí)只需一杯咖啡的時間
再繼續(xù)此話題。“輕量級webide”更大的意義,還體現(xiàn)在“輕快”。其在30秒之內(nèi),即可在線創(chuàng)建開發(fā)環(huán)境,10分鐘之內(nèi),即可快速開發(fā)部署鯤鵬云原生應(yīng)用,而傳統(tǒng)桌面ide完成上述動作,則需3小時以上。
據(jù)華為云云原生領(lǐng)域?qū)<艺f,“企業(yè)上云,云原生已是必然選擇,而且越來越多的企業(yè),正在將高并發(fā)的核心業(yè)務(wù),遷移至云原生平臺中。”
目前,cloudide已經(jīng)將華為云底層的諸多服務(wù)拉通。例如,只需執(zhí)行一個程序指令,即可將微服務(wù)推送至華為云鏡像服務(wù),此種優(yōu)化極大地提升了開發(fā)效率,或許一杯咖啡的時間,就可基于“鯤鵬原生”平臺,完成應(yīng)用程序編寫,而傳統(tǒng)ide則需逐步進(jìn)行手工操作。對此,華為云云原生領(lǐng)域?qū)<艺f:“開發(fā)者幾乎可以零等待地獲取鯤鵬原生能力,而對于鯤鵬的所有陌生和誤解,也將在零成本的試用體驗(yàn)中消除。”
全年免費(fèi)
如上即是華為云cloudide,輕盈、輕巧、輕快的華為云cloudide。傳統(tǒng)ide擺脫臃腫笨重的形象,已經(jīng)成為歷史;x86平臺和鯤鵬平臺之間,也將不再有“異地戀”的相思之苦;甚至一杯咖啡的時間,就可基于“鯤鵬原生”平臺,完成應(yīng)用程序編寫。由此,開發(fā)者才可以專注于應(yīng)用本身的成就,專注于代碼本質(zhì)的快樂。
而最后說一句:華為開發(fā)者大會2020(cloud)期間,華為云在介紹cloudide的同時,還進(jìn)一步宣布:2020年,cloudide將對所有鯤鵬實(shí)例全年免費(fèi)。