You're forgetting a key point;  The algorithms used. 

I've seen Java apps outperform C apps which are, to the user, functionally 
equivalent. The main reason is the developer of a Java app made better use of 
the resources available. (e.g. using caching, writing data in suitably sized 
blocks, better use of memory, better use of multiple cores/threading, etc.)

When runtime JIT compilers are involved you can see your application optimised 
at runtime to a platform as opposed to having the app compiled with a set of 
assumptions about what platform the app will be running on.  An example I 
encountered was on a platform where some of the CPUs used could xor a register 
with itself faster than it could load 0 into the register, and other CPUs used 
were the other way around, so a runtime optimised language optimised by the JIT 
compiler to use xor reg,reg  or load reg,0 where appropriate as opposed to a 
pre-compiled binary had to make a choice and take the hit one-way or another.

So things are not quite as clear cut as you seem to think they are.

Al.
--

* Looking for Android Apps? - Try http://andappstore.com/ *

======
Funky Android Limited is registered in England & Wales with the company number  
6741909. 

The views expressed in this email are those of the author and not necessarily 
those of Funky Android Limited, it's associates, or it's subsidiaries.

On 7 Apr 2010, at 11:45, Nanard wrote:

> I think there is a level between the application in Java (home & app)
> and the harware : the drivers are of course in C, and the JVM.
> 
> If you compare Android devices with all other devices, we have more
> 'level of software' in Android devices :
> 
> drivers C : Android   and others
> OS + libraries C :  Android   and others
> 
> JVM : Android
> Garbage Collector : Android
> 
> App : 'interpreted' for Android      direct machine language code for
> other app.
> 
> 
> Even when playing a video/audio : the decoding should be done in C,
> but when interfacing with 'home/UI' : it go to Java ...
> 
> Android devices can never match the speed ..  of course you an always
> add CPU Mhz...
> 
> 
> 
> At least : we (developer) have a wide range of devices ... THAT's the
> good point of Android vs the others :-)
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "Android Discuss" group.
> To post to this group, send email to [email protected].
> To unsubscribe from this group, send email to 
> [email protected].
> For more options, visit this group at 
> http://groups.google.com/group/android-discuss?hl=en.
> 

-- 
You received this message because you are subscribed to the Google Groups 
"Android Discuss" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/android-discuss?hl=en.

Reply via email to