+ 4

Is android making java obsolete?

25th Mar 2017, 6:29 AM
Soumya Kanti Paul
Soumya Kanti Paul - avatar
13 Answers
+ 16
Android apps mostly written in Java → Android makes Java obsolete? Not really.
25th Mar 2017, 10:35 AM
Hatsy Rei
Hatsy Rei - avatar
+ 14
How could an operation system make a programming language obsolete?
25th Mar 2017, 6:57 AM
Tamás Barta
Tamás Barta - avatar
+ 10
It means that you cannot run a Java program (bytecode) on Android OS because there is no JVM on it. It doesn't make Java obsolete. Especially you still write Android apps in Java language despite dalvik byte code are generated and dalvik VM will execute it. It means for me that you write in Java but not Java will be executed. This is not a unique, there are lot of other examples where a language compiles to Java byte code for example: Scala, Groovy, Clojure
25th Mar 2017, 7:32 AM
Tamás Barta
Tamás Barta - avatar
+ 8
"Learning and using Java". Do you mean creating an running a simple Java app on an Android device is not possible? This is the same about other languages too like C++, C# or am I wrong? (I haven't tried it). I think Android OS isn't for development yet. There is no tools for that. The Linux base of Android is similar as Dalvik and Java. It is Linux and you could use for development but you can't easily install a c++ compiler on it easily like on desktop linux-based OS. Maybe in the future they move in a direction to make on-device development possible.
25th Mar 2017, 7:55 AM
Tamás Barta
Tamás Barta - avatar
+ 8
Google made a lot of great optimizations in different area (network protocols, linux kernel, dalvik, ...) to make mobile and web experience better. It was fine if Google and Oracle and other members of Java community would modify JVM (combine Dalvik and JVM) to create a greatly optimized VM which is usable both on mobile and desktop. Of course I don't​ know if it is possible at all and what is the real reason they didn't do that.
25th Mar 2017, 4:38 PM
Tamás Barta
Tamás Barta - avatar
+ 8
Oh, really, I have forgotten it.
26th Mar 2017, 5:09 AM
Tamás Barta
Tamás Barta - avatar
+ 7
Well, strictly speaking, modified Java is used for Android app development. But, I don't think that makes Java obsolete.
25th Mar 2017, 4:33 PM
Krishna Teja Yeluripati
Krishna Teja Yeluripati - avatar
+ 6
I wonder if there will be any cross-platform alternative. An app with a GUI will be able to run as an Android app or on Windows and Linux too. HTML5 maybe...
25th Mar 2017, 8:23 AM
Tamás Barta
Tamás Barta - avatar
+ 5
by preventing a language whose strength is cross-platform from running on a device. I mean, now that android devices are so ubiquitous, the WORA feature is dead since the java program you wrote won't run on android as it does on Win, Linux, Mac. That's practically strangling widthspread of java to Mobile. JVM vs DVM... really?
25th Mar 2017, 7:15 AM
seamiki
seamiki - avatar
26th Mar 2017, 5:03 AM
seamiki
seamiki - avatar
+ 4
@Tamas Barta my point was focused more on the complications of using java on android devices, considering that nowadays there are families with multiple Android devices and no PC (especially developing countries-new markets). Learning and mostly using Java in such a scenario, becomes more and more impractical even though the language is the base of the OS.
25th Mar 2017, 7:45 AM
seamiki
seamiki - avatar
+ 4
On a PC some years ago you'd go for java because of its cross platform property, now you'd look for "better" (web based) alternatives if your target is cross-platform. This ends up inevitabily as an additional wrinkle for Java. I really hope that android devices become less locked and more developing friendly but I'm afraid this won't happen soon.
25th Mar 2017, 8:13 AM
seamiki
seamiki - avatar
0
maybe in that APK will be the standard binary format rather than EXE or BIN, which would address the cross-platform issues. But seeing as how most APK's are written in java I can't see where it would render java obsolete.
25th Mar 2017, 11:40 AM
Aaron Nelson
Aaron Nelson - avatar