My suggestion is pay attention to facts. Android VM GC is currently better than Java VM on Symbian..
Register based VMs do ntot need JIT performance wise hence the register choice over stack in the VM implementation.. Now the performance hit you see is the bad colelkection classes in Java not GC iteslf..seee javolution.org whitepapers.. Even MIcrosoft discusses the differences in not needing JIT with register based VMs in their own whitepapers.. On Thu, Apr 23, 2009 at 3:34 PM, Stoyan Damov <[email protected]>wrote: > > On Thu, Apr 23, 2009 at 9:53 PM, Streets Of Boston > <[email protected]> wrote: > > > > "Everyone-- *everyone*--- *FREAKING EVERYONE* knows > > that truly talented developers prefer c[++] wayyy over java; newbie > > developers love java because that's what retarded schools teach CS > > majors-- a crap language for people who can't figure out the > > "difficult" tasks of memory management and avoiding buffer overflows. > > Nobody wants to port c to java, because it's a *downgrade*. " > > <snipped Streets Of Boston's post> > > I'll jump in here, because I have 10+ years *extensive* experience > with C and C++, and a bit less with Java. > > First of all, talent is definitely not tight to language. > I have seen SO BAD C++ devs, they don't deserve to code in ANY language. > Ditto for Java devs. > > 2nd, Java today is not what it used to be, say, 5 years ago. > Especially in terms of performance, which is key to this post. > For example, my day job is working on a real-time financial data > distribution middleware, with (among other languages) a C++ and a Java > API. > The performance (read messages/second) of the C++ networking code, > developed with boost::asio (or simply the best cross-platform async > I/O networking library for C++) is so close to the one done with > Java's NIO (which is simply a very thin wrapper on top of async I/O > library developed in C) that you can't really tell which one is > faster. > These days, most of the performance-critical code in Java is wrapped C > libraries. JIT does miracles as well. > Probably the only thing performance-wise where Java sucks is the > inevitable latency due to GC. That's about it. > > 3rd, ooooooooops, Android doesn't run java. The SDK compiles Java, but: > 1) does not produce Java byte code, and does not execute Java byte code > 2) the code is not optimized at all, or at least that's my impression > because it does matter if I call simple getters, or access fields, > etc., etc. > 3) There's no JIT. > 4) Dalvik VM's GC sucks. > > So, for games, and games ONLY I'd prefer to code in C++. > For *everything* else I'd use the Java SDK. I'm not a masochist. > > Cheers > > > > --~--~---------~--~----~------------~-------~--~----~ 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 -~----------~----~----~----~------~----~------~--~---
