安卓|為什么安卓系統不和ios一樣用C語言開發?

安卓|為什么安卓系統不和ios一樣用C語言開發?

文章圖片

安卓|為什么安卓系統不和ios一樣用C語言開發?


我開發安卓應用快8年了 , 這個問題我來說幾句 , 首先我要說的就是Java不是一個很好的安卓開發語言 , C++比Java更合適 。 安卓的卡頓Java不是主要問題也脫不了關系 。 那為什么還用Java呢?主要是技術實力與時間不足 , 安卓一開始不是谷歌的 , 而是一位叫安迪羅賓的人創建的安卓公司開發的 , 公司名就是安卓 , 05年被谷歌收購 , 才成為谷歌的產品!

【安卓|為什么安卓系統不和ios一樣用C語言開發?】

技術方面 , 回到安卓創建的03年 , 這時候安迪羅賓根本沒實力修改C語言的編譯器使編譯器編織出符合安卓系統的代碼 , 難度跟開發一門編程語言差不多 , 而Java則沒有這個問題 , 因為Java是運行時語言 , 只要移植Java虛擬機過去就可以了 , 編譯器什么的根本不需要修改 , 只要確定虛擬機能運行那Java的代碼就能運行 , 這個可比修改C語言編譯器簡單多了 , 本身Java虛擬機就有linux版本 , 而安卓底層也是linux , 不論從技術還是時間上對當時的安迪羅賓Java都是最合適的 。




不要說什么c太難受眾太少 , 這不是問題 , 蘋果的ios用的就是c , oc就是c的一個超集 , 語法比c更復雜 。 簡單總結就是安卓當初是一個小公司創建的 , 技術實力不行 , 只想用市面可用的技術整合出一個來賺錢而已 , 當時2003年的競爭對手是瞄準諾基亞塞班系統 , 這個公司原本打算弄好后賣給三星公司 , 因為三星當時是僅次于諾基亞的手機制造商 , 但是三星看不上 。




后來05年賣給了谷歌 , 07年蘋果ios出現了刺激到安卓團隊 , 又改為支持觸屏系統與ios競爭 。 最開始的安卓系統是按鍵的 , 即使后來來到了有錢又技術的谷歌手上 , 但是之前的系統框架已經是基于Java寫的應用寫的 , 谷歌不可能全改掉 , 只能不斷在這基礎上改進 , 不然全改了還花錢買什么直接自己做一個好了 。

    相關經驗推薦