6/17/2008

why use android

星期六去了google developer day
聽了四場演講
分別是Gears, GData, Android Introduce, Android VM

Gears跟GData算是比較冷門的
它們兩個可以說是很偏應用性的東西 可能知道一下 以後有需要再用就好了

下午的Android在比較大的會場上
Android Introduce對我來說沒甚麼
因為網頁上的文件都看過了 他講的東西文件中也講了 所以沒聽到甚麼
都在練英聽
Android VM 是我覺得很有趣的 但大部份人應該會覺得很無趣吧
因為它是在講compiler and virtual machine

之前問我為甚麼玩android 跟其他手機上寫程式差在那
其實不太知道 只覺得它有很多API而已
聽完這場演講我比較知道它的優勢在那
最主要是android它放棄了Java Standard VM 改用自己開發的Delvik VM
以前我都不相信java會比C慢很多
經過他說明後了解了 java比較慢不單是因為VM的存在
java's code編釋成bytecode的結果才是重點
java採用stack based的方式產生指令 所以任何變數必須push, pop到stack裡
所以往往一個儲取,迴圈就多了很多不必的指令

而Delvik VM則改用register based的方式 變數記錄在register裡 再作儲取
所以產生的指令就比較少了
單單這個改變就可以令速度快好幾倍了

沒有留言: