That's a hard question to answer. Practicality and power mean a lot of things. Perhaps you could explain your motives for asking such a question? Are you trying to decide which language to learn or something?
Well, i'm currently learning C++ and I know a basic knowledge of it but before I want to go too far into it I wanted to know if there are better programming languages as far as designing GUI and things like that. I also have a small amount of knowledge of Java and I know a lot of Python.
The good thing about learning C++, is that it will make learning other languages easy. For example, Java is a piece of cake after knowing C++, but C and C++ are nightmares for people who only know Java.
I personally don't like making GUI's in Java. It's built in, but that doesn't mean it's necessarily better or easier to use.
Objective C is Apples version of an object oriented superset of C.
But I think the most important thing is that you came here and asked it, rather than in a Java forum, or a general purpose programming forum like Stack Overflow.
So it sounds like you've already made up your mind.
I'll say 'good choice' because C++ is my personal favourite, and one of the first I learnt. It's very rewarding learning this language, and even now despite all I can do with it I still only know a small proportion of what it has to offer. Even now it's still being developed and added to by thousands of experts from academia and industry.
But I'm biased, probably. I mean I am posting on a C++ forum.
I personally think Java is an overrated language used by mediocre programmers who don't want to learn the depth of C++, or just don't have the time for debugging simple things like copy constructors. Thinking about passing an object in Java is nil compared to C++, thats one thing thats easier with Java.
Can you explain? That one of the wackiest claims I've heard in a while.
not true at all. java is a valid language that can be used professionally. and honestly its kind of hard to take that claim seriously with the name lost with cpp
Of course Java is used professionally, but the fact remains that its an easier way to do OOP than C++.
I didn't mean explain the less functionality part, I meant the is C++ part. That's like saying Pizza is cake but with less sugar.