8月25日下午,CSDN(微博) TUP第十三期“架構(gòu)師沙龍快時(shí)代之客戶端優(yōu)化”在北京麗亭華苑酒店舉行。暴風(fēng)影音(微博)播放研發(fā)總監(jiān)黃森堂、搜狗研發(fā)總監(jiān)李子拓和鮮果CEO梁公軍(微博)擔(dān)任本次活動(dòng)講師,分別從PC和Moblie兩個(gè)方面分享了客戶端性能優(yōu)化的實(shí)戰(zhàn)經(jīng)驗(yàn)。
合理的架構(gòu)設(shè)計(jì),對(duì)客戶端后期優(yōu)化至關(guān)重要
暴風(fēng)影音播放器一直因?yàn)椤奥保l(fā)用戶諸多抱怨。新發(fā)布的暴風(fēng)影音5在啟動(dòng)速度上較暴風(fēng)影音3提升了3倍。暴風(fēng)影音播放研發(fā)總監(jiān)黃森堂以暴風(fēng)影音5的研發(fā)為案例,分享了暴風(fēng)影音在實(shí)現(xiàn)“快”客戶端過(guò)程中的實(shí)戰(zhàn)經(jīng)驗(yàn)。

黃森堂表示一款軟件往往在發(fā)布之初速度很快,但隨著后期業(yè)務(wù)模塊的增加,速度會(huì)越來(lái)越慢。究其原因,是不合理的架構(gòu)設(shè)計(jì)限制了后期的優(yōu)化處理。當(dāng)時(shí)暴風(fēng)影音3就面臨這樣的問(wèn)題。“對(duì)架構(gòu)進(jìn)行重構(gòu):將原有復(fù)雜架構(gòu)下各個(gè)模塊的復(fù)雜關(guān)聯(lián)去掉,保證每個(gè)模塊的職責(zé)單一。”是暴風(fēng)影音提速所采取的主要措施之一。
皮膚引擎的好壞,決定了客戶端的啟動(dòng)速度。優(yōu)化皮膚引擎,也是本次暴風(fēng)影音提速任務(wù)中的重中之重。黃森堂表示,對(duì)于皮膚引擎的優(yōu)化不外乎四步,即讀取優(yōu)化、加載優(yōu)化、代碼優(yōu)化及顯示優(yōu)化。在實(shí)現(xiàn)讀取優(yōu)化中,暴風(fēng)影音采用自定義文件存儲(chǔ)格式,減少文件讀取次數(shù),從而加速讀取速度,同時(shí)還自定義了壓縮格式,以減少文件I/O的讀取。對(duì)于顯示優(yōu)化,黃森堂認(rèn)為顯示優(yōu)化的目標(biāo)是讓圖片更快速地顯示出來(lái),開(kāi)發(fā)者應(yīng)該拋棄傳統(tǒng)圖片的顯示方法,努力挖掘CPU的潛力,“拋棄傳統(tǒng)窗口刷新技術(shù),采用革新的窗口主動(dòng)刷新技術(shù)”是暴風(fēng)影音5采取的優(yōu)化措施。

如何把客戶端軟件做得更快?搜狗研發(fā)總監(jiān)李子拓從網(wǎng)速、渲染、防假死、啟動(dòng) 等多角度介紹了搜狗瀏覽器“快”背后的技術(shù)要點(diǎn)。李子拓建議在啟動(dòng)客戶端時(shí),應(yīng)竭力做好DelayLoad,推遲加載不需要的模塊,等用戶需要時(shí)再加載。最后他強(qiáng)調(diào),不管在任何情況下,一定要優(yōu)先響應(yīng)用戶的需求,最好把程序需要啟動(dòng)的時(shí)間告訴用戶,讓用戶心中有數(shù)。

鮮果CEO梁公軍從產(chǎn)品的層面,詳細(xì)講解了如何快速組建團(tuán)隊(duì)及如何快速的發(fā)布、推廣、迭代產(chǎn)品。
要做到快速發(fā)布產(chǎn)品,梁公軍表示公司內(nèi)部首先要有良好的溝通工具,可選confluence或jira,其次就要從事、人、時(shí)間三方面做到快速開(kāi)發(fā),對(duì)于架構(gòu)師要特別注意一點(diǎn),即先做到,再做好。再者就是對(duì)于員工要做到知人善任,每個(gè)人責(zé)任分工要非常明確。
對(duì)于創(chuàng)業(yè)團(tuán)隊(duì),在最開(kāi)始做產(chǎn)品時(shí),不要貪全貪大。梁公軍建議如果所做產(chǎn)品還不成熟,可以先只做iOS及主要的Android機(jī)型適配,等產(chǎn)品成熟后,再去適配其它機(jī)型。否則以后兼容的開(kāi)發(fā)成本會(huì)越來(lái)越高。
當(dāng)前移動(dòng)互聯(lián)網(wǎng)很熱,很多公司紛紛投入到移動(dòng)潮流中,最終誰(shuí)將問(wèn)鼎?梁公軍認(rèn)為這將取決于正確的方向、正確的市場(chǎng)時(shí)間、靠譜的領(lǐng)導(dǎo)人和合作伙伴、充足的糧草、快(體現(xiàn)在執(zhí)行力上)等因素。SOLOMO(Social Local Mobile)才是未來(lái)產(chǎn)品的正確方向。

最后,在圓桌論壇中,CSDN&《程序員》雜志總編劉江及三位講師就客戶端的相關(guān)技術(shù)進(jìn)行了討論。對(duì)于做客戶端的開(kāi)發(fā)人員應(yīng)該關(guān)注哪些技術(shù),鮮果CEO梁公軍表示,如果開(kāi)發(fā)者希望向移動(dòng)領(lǐng)域發(fā)展的話,對(duì)于C#語(yǔ)言的開(kāi)發(fā)者,可以關(guān)注一下Windows Phone 7;C++的開(kāi)發(fā)者,可以關(guān)注一下iOS;Java開(kāi)發(fā)者,可以關(guān)注一下Android;前端開(kāi)發(fā)人員,可以研究一下HTML5。(文/陳秋歌)
推薦閱讀
鮮果網(wǎng)CEO梁公軍:移動(dòng)客戶端的速度優(yōu)化
8月25日下午,CSDN(微博) TUP第十三期“架構(gòu)師沙龍快時(shí)代之客戶端優(yōu)化”在北京麗亭華苑酒店舉行。暴風(fēng)影音播放研發(fā)總監(jiān)黃森堂、搜狗研發(fā)總監(jiān)李子拓和鮮果CEO梁公軍擔(dān)任本次活動(dòng)講師,分別從PC和Moblie兩個(gè)方面分享了>>>詳細(xì)閱讀
本文標(biāo)題:TUP第十三期:客戶端性能優(yōu)化實(shí)戰(zhàn)經(jīng)驗(yàn)分享
地址:http://www.sdlzkt.com/a/kandian/20120305/36885.html