|
|
|
|
|
by jallmann
3800 days ago
|
|
Didn't want to say it outright, but that's my theory too. Having a VM manage everything in a resource/power constrained environment is a crazy idea in the first place. Oracle's JVM is competitive because of heroic engineering, in spite of Java's design -- not because of it. And it still has tradeoffs, like insane memory usage. ART/Dalvik are operating under different constraints, which probably contributes significantly to Android's handicap. That can't be the whole story though, because C# and VB.NET both (seem to) perform decently under a managed runtime on Windows Phone. Wonder how big of a role the CLR has in typical WP apps and the WP core, as opposed to unmanaged C/C++ code. |
|
On Windows Phone 8.x, it uses MDIL (Machine Dependent Intermediate Language) meaning native code with symbolic names for the on-device linker.
On Windows Phone 10 onwards, it makes use of .NET Native.
Both are based on Visual C++'s backend, which is way more world battle tested than ART.
.NET also supports value types.
Also the XAML layouts are compiled to binay, not interpreted on load like on Android (aka inflated).
Windows Phone also only supports asynchronous code, graphics and sound APIs must be hardware accelerated.