Страницы

Поиск по вопросам

пятница, 29 ноября 2019 г.

Хочу писать под Android, но не люблю Java [закрыт]

#java #android #android_ndk


Не люблю Java и все. А хочется писать именно под это платформу. Я знаю, что существует
Android NDK, но его же надо использовать только по назначению для каких-либо серозных
вещей типа движков для игр.    


Ответы

Ответ 1



Тогда без Java! Для андроида можно разрабатывать приложения на почти любом языке программирования, компиляторы которых генерируют байт-код для JVM. Нравится функциональное программирование, совмещенное с продуманной объектной моделью? Развитая система типов? Тогда смотрите Scala и краткую инструкцию по разработке приложений на Scala для Android. Нравится функциональное программирование в совокупности с динамической типизацией? Макросы и идея семантической компрессии приводят вас в восторг? Тогда смотрите Clojure. Вот так его используют для разработки под Android. Фанат скриптовых языков? Выбирайте - Ruby или Python, что больше нравится. Здесь объяснят, как их "готовить" для Android'а. Предупреждение: конечно, на практике не все так идеально. Чтобы успешно разрабатывать на вышеперечисленных языках для платформы Android, потребуется вложить на первых порах намного больше сил, чем в случае с Java. Придется научиться использовать дополнительные инструменты, подыскать среды программирования, зачастую не такие удобные, как для Java, преодолеть свою лень и получше изучить "внутренности" виртуальных машин JVM и Dalvik, ну и т.д. Если осилите - о Java можно почти полностью забыть. Примечание о производительности: из перечисленных Scala единственный язык со статической типизацией. Производительность почти такая же, как и у Java. Хотя идиоматический код на Scala может быть медленнее: чтобы понять почему, вам надо хорошо понимать, что такое функциональное программирование - это отдельная большая тема. Остальные языки - динамические, и как следствие, на порядок уступают в производительности Java. Хотелось бы, однако, напомнить, что "преждевременная оптимизация - корень всех зол". А также то, что фактор производительности излишне переоценивается программистами. Серверная часть многопользовательской онлайн-игры Eve Online, в которую одновременно играют десятки тысяч человек, написана на Python. Вы уверены, что требования вашего проекта к производительности выше, чем у разработчиков этой игры? В 95% случаев ответ отрицательный.

Ответ 2



Если по каким-либо причинам вы не можете писать на Java, то у вас остается один выход - использовать каркасы, которые поставляют сторонние разработчики. Например, Rhodes. Если выберете его, будете писать на HTML + JavaScript + Ruby, правда в возможностях будете сильно ограничены.

Ответ 3



Adobe Flex.

Ответ 4



Lua любите? Пишите сразу и под Android, и под iOS: Corona SDK

Ответ 5



NativeActivity вам в помощь.

Комментариев нет:

Отправить комментарий