Some thoughts

@zarch @pspeed Thanks. These really clear things up a lot.




@pspeed said: I've relegated C and C++ to the same place I used to put assembly language... a legacy relic useful for when you need hand-rolled performance on some specific piece of hardware.


Some specific piece of hardware? or do you mean some specific instances? Would love to hear a little details. :)

@androlo said:
The guy who wrote that comment needs to be garbage collected.


Well said!

@shirkit said:
I think the only thing Java lacks is respect.


Perfect.
@iamcreasy said:
Some specific piece of hardware? or do you mean some specific instances? Would love to hear a little details. :)

I guess he means hardware, yeah. You can directly write and read any memory range, also those of the hardware to set instructions etc.
But the language C++ itself is really pretty convoluted.. C is fine, you get the benefits of the "native" language but don't get a totally messed up object orientation hacked in like with C++.. If I want to code on that level, definitely not in C++
@normen said:
I guess he means hardware, yeah. You can directly write and read any memory range, also those of the hardware to set instructions etc.
But the language C++ itself is really pretty convoluted.. C is fine, you get the benefits of the "native" language but don't get a totally messed up object orientation hacked in like with C++.. If I want to code on that level, definitely not in C++


Yeah, I prefer C if I can use it. There are some things that only have a C++ library and its quicker to use that (and wrap it in a Java JNI wrapper) than to reverse engineer something. And back in the day, I'd also written a wrapper for OpenSceneGraph (OSG) which is a very very very C++ oriented API.

Those are the reasons I wrote this util all those years ago: http://jpeergen.sourceforge.net/
1 Like
@pspeed said:
Yeah, I prefer C if I can use it. There are some things that only have a C++ library and its quicker to use that

I am _so_ happy that in XCode I can mix Obj-C/C and C++ in one file by just giving it another suffix (.mm instead of .m), makes adapting C++ libs much nicer ;)

Add: So you see its not that we're afraid of native languages, we just think we are quicker doing actual work with java, also for games... :)

Well using native stuff in java is not taht much of a hassle, sure a jni wrapper writes not itself, but usually its way faster than writing everything in c++



(Though there are some very very good coded frameworks in c++, that let you forget most of the standart crap for a moment)

@EmpirePhoenix said:
Though there are some very very good coded frameworks in c++, that let you forget most of the standart crap for a moment

..then you mix them with other libs and they work _totally_ different (but maybe even also quite nice). Java and its standards (as well as default api) make libraries much more compatible also coding-wise. With C++ in a real app you end up with 7 implementations of the same basic stuff that you have to optimize each plus 7 versions in the libs you import ;) (given you want platform independence)..
But yeah, you can code properly in C++ ^^ Ogre is actually quite nice but trying to make a game with it you'll probably find out about all we said here yourself, its _not_ a cure to all framerate issues to go native ;).