I want to write for Android, but I don't like Java [closed]


Closed. It is impossible to give an objective answer to this question . Answers to it are not accepted at the moment.

Want to improve this question? Reformulate the question so that it can be answered based on facts and quotations.

Closed 5 years ago.

Improve the question

I don't like Java and that's it. And I want to write exactly for this platform. I know that there is an Android NDK, but it should only be used by software purpose for any serous things like game engines.

Author: nano, 2011-09-03

5 answers

Then without Java! For android, you can develop applications in almost any programming language whose compilers generate bytecode for the JVM.

  • Do you like functional programming combined with a well-thought-out object model? Developed type system? Then see Scala and the brief instructions for developing Scala apps for Android.
  • Do you like functional programming combined with dynamic typing? Do macros and the idea of semantic compression delight you? Then see Clojure. Here so it is used for Android development.
  • A fan of scripting languages? Choose - Ruby or Python, which is more like it. Here will explain how to "prepare" them for Android.

Warning : Of course, in practice, not everything is so perfect. To successfully develop in the above languages for the Android platform, you will need to invest a lot more effort at first than in the case of Java. You will have to learn how to use additional tools, find programming environments that are often not as convenient as for Java, overcome your laziness and better study the" insides " of JVM and Dalvik virtual machines, etc. If you master it, you can almost completely forget about Java.

Performance note: Of the listed languages, Scala is the only language with static typing. The performance is almost the same as that of Java. Although idiomatic code in Scala can be slower: to understand why, you need to have a good understanding of what functional programming is-this is a separate big topic. The rest of the languages are dynamic, and as a result, they are an order of magnitude inferior in performance to Java. I would like to remind you, however, that "premature optimization is the root of all evil". And also that the performance factor is unnecessarily overestimated by programmers. Server Room Part of the online multiplayer game Eve Online, which is played simultaneously by tens of thousands of people, is written in Python. Are you sure that your project's performance requirements are higher than those of the developers of this game? In 95% of cases, the answer is negative.

 30
Author: Nikolay Artamonov, 2015-08-09 15:06:52

If for some reason you can not write in Java, then you have only one choice-to use the frameworks that are supplied by third-party developers. For example, Rhodes. If you choose it, you will write in HTML + JavaScript + Ruby, although you will be very limited in your capabilities.

 1
Author: stanislav, 2011-09-03 17:11:06

Adobe Flex.

 0
Author: kENNAAAAA, 2011-09-03 17:35:19

Do you like Lua? Write immediately for both Android and iOS: Corona SDK

 0
Author: Sergiks, 2013-03-21 17:07:06

NativeActivity to help you.

 -1
Author: ganelon, 2013-03-21 16:51:35