I feel I can honestly answer this question having gone from a professional 50% C++/Java -> 100% Java -> 100% Scala to now ~60-80% C++ (yay google...)
Ironically, with good libraries I can be about as productive in C++ as I was in Java. There tends to be more boiler-plate in C++ and more decisions to be made when designing a class. However, for general "enterprise-y" development, I haven't seen a huge difference in either language. You tend to know exactly how to do things in C++, such as pass memory ownership around. With Java I found myself fighting the J2EE stack and optimising RDBMS calls almost as often as creating new services and features. The basic gist of my development preference is that I really want a language to that allows me to write the logic of my function in a way that: (1) Is easy to read and understand later (2) involves little boiler-plate (that gets in the way of understanding). (3) optimizes my code efficiently without my having to go through a lot of grunt-work (4) Enough tooling support for "click on method/class -> open definition/declaration" I love JVM langauges due to JIT and GC. These help reduce the noise in my algorithms. There have been several times where for performance or bug-prevention reasons, my C++ has felt ugly or boilerplatey. Having used some higher level languages, I started feeling the same with Java. In terms of my professional career's languages, I would say I enjoyed using Java for enterprisy things more than C++. C++ templates were far too much fun for my side projects to say that Java is more enjoyable than C++. - Josh On Tue, Sep 28, 2010 at 8:49 AM, Carl Jokl <carl.j...@gmail.com> wrote: > I know this is the Java posse rather than the C/C++ posse but given > that I believe a number of you have C/C++ experience I hoped you might > help me with a question. > > This isn't any kind of flame bate or provocation to argument I would > just appreciate some honest opinion. > > I wonder for those who have extensive C/C++ experience how productive > a highly experience C/C++ developer can be relative to Java. > > I have been doing quite a bit of native work recently and have done > some in the past but am not all that experience relative to the time > spent with Java and .Net. > > I know and understand the concepts of C/C++ but I can't say if feels > natural yet. I find both Java and C# easier to read and understand. > > I do appreciate though that what is easy to read and understand > depends on what you are used to and levels of experience. > > I am curious as to how easy and natural it feels with lots of > experience. It is easier to ask someone with lots of experience than > have to try working with it for many years to see how it feels. > > -- > You received this message because you are subscribed to the Google Groups > "The Java Posse" group. > To post to this group, send email to javapo...@googlegroups.com. > To unsubscribe from this group, send email to > javaposse+unsubscr...@googlegroups.com<javaposse%2bunsubscr...@googlegroups.com> > . > For more options, visit this group at > http://groups.google.com/group/javaposse?hl=en. > > -- You received this message because you are subscribed to the Google Groups "The Java Posse" group. To post to this group, send email to javapo...@googlegroups.com. To unsubscribe from this group, send email to javaposse+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/javaposse?hl=en.