Z
Z
zasqer2015-10-31 14:25:37
Java
zasqer, 2015-10-31 14:25:37

Does a program written in other languages ​​run on the JVM?

To be clear, I'm not an android developer. Please explain in an accessible language - is it possible to write NORMAL applications for Android in other languages ​​or not?
I haven't been banned by Google yet, here's what I've found so far:
1) android apps run on Dalvik, which is a JVM.
2) There are languages ​​(other than Java) that are JVM-oriented, such as Scala, Groovy, or Clojure.
3) Theoretically, they try to write something on them, but it turns out it’s not ideal, both in terms of performance and in terms of some roughness with the API (I don’t understand this moment - it turns out there are some libraries in Java, but on clojure no?).
I ask developers for android to speak out - these imperfections and roughness - is it a matter of time? Can I choose a JVM language and try something on it, or is it not as simple as I think?
If there are any nuances associated with compilation, please speak in a simpler way, I have a brain python.
If anyone is interested, I'm looking at these languages, because I wanted to work with ChromeOS, but since ChromeOS is dead, and Java doesn't suit me psychologically, I'm looking at alternatives.

Answer the question

In order to leave comments, you need to log in

4 answer(s)
W
werktone, 2015-10-31
@werktone

1) Dalvik is not exactly a JVM, because it does not work with Java bytecode, but with its own. And in general, starting from 5.0, not Dalvik is used, but ART .
2) Not all JVM languages ​​are fully compatible with Java, which is why there are problems with the API. In the case of Scala, the large size of the standard library also plays a role.
PS Look at Kotlin

O
Oleg Gamega, 2015-10-31
@gadfi

Scala, Groovy or Clojure are not an option, I'm not sure what they will be)
Kotlin is cool, but not yet friendly with databinding
The main question is why?
sdk is the same, the problems are the same, but additional problems are added to them.
You need to start with java
Reasoning I know python or c ++, why not write in it or any other language is fundamentally wrong.
Most of the materials are for java, the most stable is java, the sdk is written in java.
I myself like kotlin, but java is still in production, and I advise you to start with it

C
cthulhudx, 2015-10-31
@cthulhudx

You can write for android using C++ (Qt):
Getting Started with Qt for Android

N
Noortvel, 2015-10-31
@Noortvel

You can code almost everything on android.
Python - kivy.org
Jython - the same Python, only in java style
C++ - Android NDK
HTML 5 - habrahabr.ru/post/183458
C# - habrahabr.ru/post/169467
You can even without programming - Google to help.
But Java is still better, because you are tormented with all this, because just take my word for it :)

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question