Android開(kāi)發(fā)必談 平臺(tái)運(yùn)行效率分析
目前,Android開(kāi)發(fā)過(guò)程中普通的程序員拿不到真機(jī)測(cè)試,無(wú)法判斷運(yùn)行效率。一個(gè)嵌入式開(kāi)發(fā)程序員可能都知道模擬器和真機(jī)的環(huán)境差距還是很大的,今天為大家分析一下運(yùn)行效率。
本文引用地址:http://www.ex-cimer.com/article/201610/305796.htm首先我們清楚的是在硬件方面官方已經(jīng)考慮使用ARM9系列的CPU,工作頻率在195MHz到220MHz之間,代表為T(mén)I OMAP 850,飛思卡爾等。由于使用了運(yùn)行效率高的Linux內(nèi)核,在內(nèi)存占用和多任務(wù)方面還是比較強(qiáng)勁的,但是面臨的問(wèn)題為Java開(kāi)發(fā)API。
官方為什么沒(méi)有像Symbian和Windows Mobile那樣提供兩種語(yǔ)言開(kāi)發(fā)可能主要是時(shí)間問(wèn)題。未來(lái)可能會(huì)加入的,不然不像Google的作風(fēng)。當(dāng)然真機(jī)發(fā)布時(shí)還有很多周邊設(shè)備的驅(qū)動(dòng)等問(wèn)題的編寫(xiě)。
既然使用了運(yùn)行效率低的Java,程序員就要考慮代碼效率了,優(yōu)化代碼是很重要的事情,在Java方面主要用在企業(yè)和手機(jī)游戲,我們都清楚Java內(nèi)存分配new后不用自己delete,有GC幫助資源回收。但是Java的異常處理還是和C無(wú)法相比,穩(wěn)定性可能最重要的,畢竟未來(lái)的廠商生產(chǎn)時(shí)會(huì)自己定制GPhone硬件,造成運(yùn)行兼容性等問(wèn)題。
Java的跨平臺(tái)越來(lái)越差了,目前冒出的Dalvik會(huì)如何呢?盡管Sun CEO表示希望Android和JME兼容但從目前的代碼中看很多都是重復(fù)的圖形庫(kù)居多。
程序員抵制的主要是優(yōu)化代碼運(yùn)行,如分配局部臨時(shí)變量時(shí)的位置、在算法方面少用遞歸,線程同步等問(wèn)題。
評(píng)論