自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

百度直達(dá)號背后的逆天“引擎” Blend架構(gòu)賦予WebApp原生應(yīng)用流暢性

企業(yè)動態(tài)
“其實(shí)要想讓W(xué)ebApp變得很流暢并不難,只要我們關(guān)注性能和交互的流暢度,然后提供很簡單的HTML API讓大家能夠遷移過去,就能夠讓W(xué)ebApp流暢運(yùn)行了?!?2月21日,在第57期百度技術(shù)沙龍上,百度移動云事業(yè)部資深研發(fā)工程師張?jiān)瑹槺硎尽?

 “其實(shí)要想讓W(xué)ebApp變得很流暢并不難,只要我們關(guān)注性能和交互的流暢度,然后提供很簡單的HTML API讓大家能夠遷移過去,就能夠讓W(xué)ebApp流暢運(yùn)行了。”12月21日,在第57期百度技術(shù)沙龍上,百度移動云事業(yè)部資深研發(fā)工程師張?jiān)瑹槺硎尽?/p>

WebAPP在開發(fā)效率上與NativeApp相比有著天然的優(yōu)勢,但是在體驗(yàn)上卻有著較大的差距。移動互聯(lián)網(wǎng)時代如何實(shí)現(xiàn)優(yōu)勢互補(bǔ),將Native能力融入到WebAPP中,是業(yè)界一直在探討的話題。本期百度技術(shù)沙龍,加入百度已經(jīng)6年的資深前端張?jiān)瑹槥榇蠹規(guī)砹酥黝}為《融入原生能力到WebApp》的技術(shù)分享,主要講解了Blend架構(gòu)對于WebApp的優(yōu)化問題。

據(jù)悉,本期百度技術(shù)沙龍是今年的***一期,作為國內(nèi)最早的技術(shù)交流活動,百度技術(shù)沙龍即將迎來自己的第5個年頭,如今百度技術(shù)沙龍已經(jīng)被北京甚至全國的技術(shù)愛好者視為不可或缺的技術(shù)學(xué)習(xí)家園。


[[125175]]

“在做Blend框架中我們會遇到許多問題。對于這些問題,我們的解決方案是降級和增強(qiáng),這是兩個不同的設(shè)備或者是要匹配兩個不同的目標(biāo)時,我們采用的方案。”張?jiān)瑹樥f。

Blend開源 用一整套方案使WebApp流暢起來

Blend其實(shí)是HybridApp的方案,張?jiān)瑹樅退膱F(tuán)隊(duì)之所以要造它,是因?yàn)楝F(xiàn)有的HybridAPP方案在性能上解決不了問題,他們希望能夠有一個提高性能,有融合能力的HybridAPP解決方案。

在張?jiān)瑹樋磥?,WebApp最大的優(yōu)勢在于迭代速度。移動互聯(lián)網(wǎng)時代,以WebApp為主角的HTML5開發(fā)方案的迭代速度很快,它是隨時可以更新的,因?yàn)樗看斡脩粼L問,如果不走緩存,它就會到服務(wù)器上獲取最新的數(shù)據(jù)。而無論是安卓還是iOS的Native App一個發(fā)版的周期平均下來大概是十四天,這會嚴(yán)重影響迭代速度。

張?jiān)瑹槺硎荆?ldquo;天下武功唯快不破,大家知道移動互聯(lián)網(wǎng)時代,一個公司或者一個產(chǎn)品想要成功,有可能它的時間要求是天級別的。如果你一個產(chǎn)品晚上線一天機(jī)會就錯失了,也就是說我們要盡可能加快迭代速度。”

作為正在做的應(yīng)用開發(fā)框架,Blend不僅僅是一項(xiàng)“拿來即用”的開源技術(shù),更是一種開發(fā)理念。使用這個理念,App不僅能保留web靈活性,剔除冗長的版本發(fā)布過程,做到極快的迭代速度,還能在交互中保證足夠的流暢性。

這樣的實(shí)現(xiàn)結(jié)果說起來容易,可張?jiān)瑹槇F(tuán)隊(duì)剛剛開始架構(gòu)Blend時,著實(shí)費(fèi)了一番功夫。他們首先針對WebApp的性能、能力、易用性三個大方面開始了整套架構(gòu)方案的研發(fā)。在經(jīng)歷了一段時間的摸索之后,張?jiān)瑹槹l(fā)現(xiàn)了一套比較合理的架構(gòu)方案:在Web交互中,用原生的Web實(shí)現(xiàn)的時候,非??ǖ臇|西用Native來實(shí)現(xiàn),其他所有的交互和所有的開發(fā)都用純Web語言來降低開發(fā)成本。

這是張?jiān)瑹樅退膱F(tuán)隊(duì)進(jìn)行Blend開發(fā)時的基本思路,有了思路,那么應(yīng)該怎么做這個架構(gòu)?總的來說,Blend會支持三個平臺,一個是iOS,一個是安卓,還有一個就是瀏覽器。

在iOS或者是安卓端,張?jiān)瑹樅退膱F(tuán)隊(duì)在上面開發(fā)一個Runtime,把原生的能力通過js的封裝,把它的接口暴露出來給上面的js或者是頁面調(diào)用同時,他們也開發(fā)了很多JsAPI給開發(fā)者使用。“首先是端能力,這個更像應(yīng)用調(diào)起,你要調(diào)起微信或者是百度搜索,我們還具有本地文件的能力;第二個是云能力,這里面包括百度的服務(wù),帳號的服務(wù)和支付;第三個是UI能力,我們有轉(zhuǎn)場動畫等等,還有手勢跟隨,還會用Native組件。”張?jiān)瑹樈榻B道。

打造原生應(yīng)用體驗(yàn) Clouda+為直達(dá)號提供“引擎”

“Blend能在能保證用戶體驗(yàn)的前提下節(jié)省人力成本,又有很高的定制性,迭代速度和web相當(dāng),對我們編程開發(fā)的幫助很大。”在現(xiàn)場的討論環(huán)節(jié),一位聽眾表示。

在現(xiàn)場,張?jiān)瑹樳€為聽眾們列舉了不少案例。他介紹,開源的Blend技術(shù)糅合了WebApp和NativeApp各自的優(yōu)勢,結(jié)合百度強(qiáng)大的云能力,可以為直達(dá)號和WebApp開發(fā)和部署提供有力支持。

作為Clouda+的重要做成部分,Blend為移動web應(yīng)用開發(fā)提供了整體解決方案,最近火爆網(wǎng)絡(luò)的百度直達(dá)號正是因?yàn)橛辛薈louda+,才能做到用戶體驗(yàn)極佳,體驗(yàn)和交互媲美Native應(yīng)用。

具體來說,Blend是一套JavaScript的API,將Native的端能力和百度的云服務(wù)融合(Blend)到WebApp中。

“Blend由BlendUI和BlendAPI兩部分組成。主要解決了webapp的兩大難題,UI交互不流暢和無法調(diào)用設(shè)備能力。”張?jiān)瑹樈忉尩馈?/p>

BlendUI讓Javascript擁有操作Webview和Native控件的能力,讓web

移動端交互流暢,體驗(yàn)無異于NativeApp。BlendAPI則讓W(xué)ebApp擁有移動設(shè)備的原生能力和百度云服務(wù)能力。

WebApp的一大困境在于可供web調(diào)用的API遠(yuǎn)不如Native的完善。比如手機(jī)是3G還是wifi網(wǎng)絡(luò),電量情況,通訊錄讀取等,這些局限給手機(jī)web開發(fā)者帶來了功能完備性的障礙。而Blend API彌補(bǔ)了這一鴻溝,它能讓webapp的API更完備,讓API的性能速度得到提升,暴露給開發(fā)者的都是通過統(tǒng)一、標(biāo)準(zhǔn)化的web API。

更為重要的是,Blend API內(nèi)置于擁有極大裝機(jī)量的手機(jī)百度,使得百度直達(dá)號開發(fā)者能在數(shù)億用戶的手機(jī)上直接使用這些本地能力,并且擁有破殼檢索、自動升級免安裝等優(yōu)勢功能。

在張?jiān)瑹樌蠋熃涣鞣窒淼倪^程中我們發(fā)現(xiàn),現(xiàn)場有不少的在校大學(xué)生,他們正在利用Blend做一些直達(dá)號相關(guān)項(xiàng)目,后生可畏,值得鼓勵,也希望越來越多的專業(yè)人士積極參與到沙龍中來,為百度技術(shù)沙龍營造了良好的學(xué)習(xí)氛圍。

百度技術(shù)沙龍是百度每月組織的一項(xiàng)技術(shù)開放交流活動,至今已經(jīng)舉辦57期。致力于以“技術(shù)開放”的心態(tài),分享行業(yè)領(lǐng)先的技術(shù)理念和技術(shù)實(shí)踐。秉承“暢想、交流、爭鳴、聚會”的理念,為互聯(lián)網(wǎng)工程師、軟件開發(fā)者提供一個快速學(xué)習(xí)和不斷成長的平臺。百度技術(shù)沙龍希望能夠借助技術(shù)分享日后有效推動中國互聯(lián)網(wǎng)的技術(shù)發(fā)展與行業(yè)創(chuàng)新。

blend官網(wǎng)的網(wǎng)址: http://clouda.baidu.com/

責(zé)任編輯:張偉
相關(guān)推薦

2014-09-04 02:25:24

百度世界大會2014直達(dá)號BaiduEye

2014-09-04 13:57:48

百度直達(dá)號

2013-03-11 10:16:52

百度BAE

2012-12-28 13:16:35

大數(shù)據(jù)架構(gòu)

2012-12-31 12:02:56

百度推薦引擎數(shù)據(jù)架構(gòu)

2013-08-23 17:12:07

百度WebApp開發(fā)框架

2012-05-24 13:55:02

XML

2014-10-29 19:24:50

百度Blend

2012-03-21 17:30:21

百度架構(gòu)師

2018-12-19 12:16:25

AndroidiOS移動系統(tǒng)

2021-06-03 15:22:37

百度智能云AI原生

2014-07-25 17:12:39

數(shù)據(jù)庫WOT2014MongoDB

2012-11-13 17:07:22

百度云ScreenX

2013-08-22 17:08:50

2013-07-01 17:21:21

百度云推送免費(fèi)云推送移動開發(fā)

2018-07-31 10:34:10

百度

2011-05-30 09:36:04

SEO百度區(qū)域性排名

2013-08-26 09:15:38

百度輕應(yīng)用

2010-05-19 15:04:31

李彥宏百度

2013-08-28 10:00:55

百度360華為
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號