為什麼Android開發使用Java而不是C++?

來源:互聯網
上載者:User

選擇Java肯定是google經過深思熟慮的抉擇,先說能確定的優勢,
Java有跨平台優勢,手機的硬體可能千差萬別,Java軟體可以只出一套執行檔。而C/C++需要針對機型出專用的編譯版。
Java有大量人員優勢,幾乎不用重複學習就能做android。
Java天生是做應用的語言,和C/C++不同,Java的語言和類庫都是多年積累的、應用最需要的常用功能。

關於效能,說些個人看法。
越是應用,新創意的成分可能越多,定式越少。這時候用一些寬鬆的語言越能快速的實現產品。
相反沒有創意的複製,才需要高效的語言。比如壓縮演算法-視頻編碼、比如3d繪製演算法,都是專家組總結的最佳演算法,沒有創意只需要實現,這時就需要最高效的語言最大限度的發揮cpu,所以這裡用c都不夠,甚至要彙編SIMD,甚至要電路硬體解碼。
有創意的東西、特別是新東西、還沒來得及形成定式,這時需要一些很靈活的語言,比如網頁網站一日數變,甚至Java都不夠靈活,需要更靈活的指令碼語言python、php之類才合用。

總之,Java是個靈活和效能的一種折中,不夠最快但夠快,不是最靈活但夠靈活。所以才適合做這些應用軟體。

摘自:http://zhidao.baidu.com/question/355813258.html

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.