#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 вам в помощь.
Комментариев нет:
Отправить комментарий