Почему Java была выбрана для Android вместо C ++? Я слышал, что Java использует довольно много памяти, и я предположил бы, что низкое использование памяти было бы очень важно на мобильных устройствах. Есть ли реальное преимущество использования Java на мобильном устройстве вместо языка, подобного C ++?
46
Ответы:
Эта статья проливает некоторый свет на ситуацию. Наиболее подходящая ссылка в этой статье - это . Таким образом, у вас есть обширная база для установки с большим количеством программистов, которые знают язык, и его широко преподают в университетах. C ++ был исключен из учебного плана моей школы, Java все еще здесь. У Java есть Java ME, которая имеет обширную базу для установки на другие мобильные телефоны. У Pantec Ease у меня в кармане сейчас маленькая кофейная чашка в углу экрана. Кто-нибудь хочет угадать, что это такое?
Этот ответ о переполнении стека также достаточно хорош.
Резюме SO ответа:
источник
Я рискну догадаться, что Google выберет Java для знакомства, если ничего больше. Многие из проектов Google вращаются по крайней мере концепции Java-схем (например, GWT).
Кроме того, этот язык широко преподается в технических школах (в отличие от, скажем, Javascript (который Android также ревностно поддерживает)). Java, конечно, не лучший язык для мобильных устройств с точки зрения производительности и производительности, но он хорошо известен.
Также помните, что Android пришел немного поздно на вечеринку. Принуждение разработчиков к использованию C ++, низкоуровневого языка компиляции, усложнило бы создание фактора «вау», и, если ничего другого, Android не нужны цифры (приложений) и быстрота, чтобы начать работу.
источник
Не уверен, почему именно Java была выбрана, но, вероятно, по ряду причин
Чтобы захватить большую группу разработчиков, которые знакомы и используют Java
Заполните мобильный пробел в Java, где такие технологии, как J2ME, где Java не хватает.
Во-вторых, для Android не указана виртуальная машина Java. Вместо этого весь код Java скомпилирован для работы на Dalvik , которая представляет собой облегченную оптимизированную виртуальную машину, специально разработанную для работы в мобильных средах. Это, как утверждается, увеличивает срок службы батареи и максимально эффективно использует ресурсы.
источник