WOT2015預熱系列訪談——樂蜂網(wǎng)技術總監(jiān)曲毅
原創(chuàng)51CTO WOT 2015移動互聯(lián)網(wǎng)開發(fā)者大會即將于2015年7月24-25日在北京富力萬麗酒店隆重召開。本次大會共設八大技術分論壇,分別從產(chǎn)品與設計、平臺與技術、創(chuàng)新與創(chuàng)業(yè)、移動游戲、算法分析、HTML5、運維安全、新浪微博技術等方面,為廣大移動開發(fā)者解開技術迷思。
為使大家進一步了解本次大會,有針對性地選擇課程內(nèi)容,51CTO記者對即將參加大會演講的技術專家分別進行專訪,為您進行各場演講精華的新鮮速遞。本次大會詳細議程見:http://wot.51cto.com/.
今天帶來“劇透”的是樂蜂網(wǎng)技術總監(jiān)曲毅。從事互聯(lián)網(wǎng)研發(fā)工作11年。曾在高陽,空中網(wǎng),樂蜂網(wǎng)等互聯(lián)網(wǎng)公司擔任構架師,高級技術經(jīng)理,技術總監(jiān)等職位。近4年專注移動互聯(lián)網(wǎng)。是國內(nèi)資深 HTML5專家和研究者,對HTML5技術有非常深刻的認識和理解,有著豐富的實踐經(jīng)驗,是HTML5引擎Crow5的創(chuàng)造者。
【講師簡介】
曲毅:樂蜂網(wǎng)技術總監(jiān)曾在高陽,空中網(wǎng),樂蜂網(wǎng)等互聯(lián)網(wǎng)公司擔任構架師,高級技術經(jīng)理,技術總監(jiān)等職位。近4年專注移動互聯(lián)網(wǎng)。是國內(nèi)資深 HTML5專家和研究者,對HTML5技術有非常深刻的認識和理解,有著豐富的實踐經(jīng)驗,是HTML5引擎Crow5的創(chuàng)造者。
以下是對曲毅老師的采訪實錄:
51cto:請您介紹一下樂蜂網(wǎng)的技術團隊
曲毅:樂蜂的技術團隊隨著高速發(fā)展的移動互聯(lián)網(wǎng)也走了許多彎路。目前移動技術團隊包括Android,IOS,HTML5/PHP,移動后端,運維,測試團隊。正如很多B2C電商一樣,移動后于PC發(fā)展,所以除了移動獨有的,能夠相應各種變化同時還要配合PC打組合拳。經(jīng)過了一年多的摸索,反復,調(diào)優(yōu)產(chǎn)生了一只專屬移動技術的團隊。
51CTO:作為樂蜂網(wǎng)的技術總監(jiān),請您分享一下您的個人經(jīng)歷,包括,是什么原因讓您從事IT技術行業(yè)?以及如何從一名普通程序員成為一線電商網(wǎng)站的技術總監(jiān)?
曲毅:如果說個人經(jīng)歷我算是科班出身,大學學的就是計算機,不過不是軟件編程,從事編程工作其主要原因是畢業(yè)設計計算機系要做項目。為了能順利的畢業(yè)自己用了兩年時間自學的編程技術,而且還拿了優(yōu)秀畢業(yè)設計獎。之后還當過老師,主要教J2EE 和.NET 。
曲毅:做程序員是我非??鞓返臅r光,每天都很忙而且很充實,永遠也學不完的技術,永遠也想探索不完的解決方案。敲敲代碼,踢踢球。就這樣一天天的積累。說到如果作為技術總監(jiān)除了專業(yè)的技術功底外,需要對所在的行業(yè)知識有探索和學習的欲望,還拓寬自己的技術寬度,移動技術飛速發(fā)展必須要強迫自己把學習變成樂趣,這樣就不會累了。因為平時有很好的閱讀習慣,無論有多忙我都會每天閱讀。一年閱讀的技術書籍超過100本。
51CTO:您在日常開發(fā)的時候會使用哪些工具來提高開發(fā)效率?
曲毅 :常用的開發(fā)工具我就不詳說了,但是我有一個特別的編好,也算是自己強迫自己去這樣做。在編寫一些前端腳本的時候例如JavaScript我現(xiàn)在還依然保持著使用記事本編寫代碼。而且還會有抄書背代碼的習慣。記得一位老師對我說,背不是笨。是的用記事本寫代碼都很快,如果隨便用個編輯工具真的感覺寫代碼和飛一樣,堅持用記事本寫代碼十年。你說你的技術功底有多扎實?
51CTO:樂蜂網(wǎng)在移動端為什么會采用Native+H5的方式?這種方式的優(yōu)點在哪?
曲毅:因為樂蜂網(wǎng)是電商公司,如果采用純原生去開發(fā),就會面臨很多很多問題。反應速度慢,很明顯客戶端有很多事件營銷,不可能別人家的客戶端變了模樣我們這邊還要發(fā)包。而且在運營層面上,當然是越靈活越好。所以我們采用的是Native+H5的方式。但實際上H5有很多性能上的問題,我們采用了Native+引擎技術。
51CTO:H5的性能一直被人詬病,在做移動端的開發(fā)時,如何避免H5的短處而更加充分的利用H5自身的優(yōu)勢?
曲毅:這個問題問的太到位了,我們都知道H5有很多好吃和有點,但是他卻有很多缺點,我們采用native+H5 的方式開發(fā)其目的就是利用原生的有點和H5 的有點,這樣互為補充做到***的體驗和靈活性。但是事情哪里是我們想的這樣啊,H5的優(yōu)點你使用了就同時也要接受它的很多缺點。對H5進行了很多深入的研究和總結,我們自己實現(xiàn)了一個基于H5的引擎Crow5,這個引擎是用Js編寫的。在用它的時候可以堅固H5的優(yōu)點,同時那么多的缺點通過優(yōu)良的設計規(guī)避掉。從而達到雙優(yōu)的效果。
51CTO:為什么選用Crow5引擎?
曲毅:選用Crow5引擎是因為才用純的webview+html5頁面的方式加載速度慢,耗費流量等問題。Crow5引擎是我們自主研發(fā)出來的,所以對很多東西我們使用起來很方便,也很容易擴展。但是如果使用其他的引擎維護成本很高,還有就是其他的類庫都太大了。手機下載資源就比較慢,如果資源庫又大,非常影響體驗。
51CTO:Crow5引擎由哪些部分組成?樂蜂的移動端有哪些應用了Crow5?
曲毅 :Crow5引擎由40多個插件和模塊組成,其中比較重要的模塊有,HTML代碼約定模塊,交互抽離模塊,數(shù)據(jù)封裝模塊,數(shù)據(jù)驅(qū)動模塊,加密混淆模塊,插件管理器,加速器,URL攔截器,動畫控制器,緩存控制器,超時監(jiān)聽器,模版控制器,請求發(fā)送管理模塊,按需加載管理器。
處理機制主要有,約定編程機制,數(shù)據(jù)驅(qū)動機制,模版引擎飄移機制,心跳保持機制等數(shù)十種處理機制。
樂蜂移動端Android,Iphone,Ipad和m.lefeng.com都有crow5的影子
51CTO:Crow5的引擎在實際使用中為樂峰的業(yè)務帶來了哪些幫助?
曲毅:技術層面上,以前需要各自獨立開發(fā)的android和iphone還有webapp需要三種語言,三個團隊去開發(fā)。采用引擎技術以后只需要按照引擎的方式編寫一個webapp的方式。引擎會自動去適配android和iphone開發(fā)人員無需過度去考慮語言的問題,降低了開發(fā)的人力投入,而且在維護上,只需要維護一個版本全平臺覆蓋同步更新,還可以不用發(fā)包。由于引擎是采用約定的設計模式,所以編寫代碼都不需要太多的手敲,只需要按照約定寫配置文件,代碼由引擎自動生成。這樣大大的簡化了開發(fā)。而且也不用考慮編寫風格問題。
運營層面上,才用H5的解決方案,可以盡情的使用這個技術的靈活性。
51CTO:您覺得Crow5引擎還需要在哪些地方加強。
曲毅:Crow5目前還沒有大規(guī)模的開源出來,而且文檔和學習社區(qū)缺失,希望未來能把這塊座起來,讓更多的愛好者一起去編寫引擎。
51CTO:隨著H5的標準落地,蘋果支持H5似乎H5已經(jīng)步入正軌,然而H5的標準并沒有得到廣泛使用,您怎么看待這種現(xiàn)象?如何看待H5今后的發(fā)展?
曲毅:任何事物的產(chǎn)生一般都會經(jīng)歷肯定,然后是否定和遲疑,我們能做的就是否定之否定。手機的性能越來越強,價格越來越便宜,而且網(wǎng)絡資費也越來越便宜。我不同意navtive會消亡,但是份額會被web技術所侵占。而且未來的生活更是網(wǎng)路無處不在,所以web技術的應用場景會爆炸式的產(chǎn)生。能預見的是手機的屏幕就那么大,手機能安裝的應用也就那么多,那么問題來了,還有千千萬的應用應該在哪里體現(xiàn)和使用呢?也許會是web方式吧。
毫無疑問H5會需求量越來越大,要求也會越來越高。
來自谷歌、騰訊、京東、360、新浪微博、樂蜂網(wǎng)、魅族等企業(yè)的技術專家匯聚一堂,只為助你打開實現(xiàn)夢想的那一扇窗。盛會虛位以待,只等你快馬加鞭!






























