Hi everybody,
I am learning c++, i tried to learn java but it seams hard.
do you personally think that learning c++ will make me understand OOP in a bad way ?
Is it better to learn c++ before java or vice versa ?
Is java slower than c++ (Some people tell me its as fast as other or faster and other people say its much slower) Its not a compiled language, right ?
What is currently more used ? java ? c++ ?
Which is more used in big commercial apps?
Please be sincere in your answers.

I consider Java to be C++ with training wheels. Both are used for big commercial applications. Either can help you learn about object-oriented programming, but I would suggest that you learn UML to really understand the basics of OOP. Object-oriented principals are not language dependent, but OOP is more a way to look at systems and programs in a way that holds together more coherently than other methods. I can say this honestly after some 20-25 years of doing it professionally. My current position as Senior Systems Engineer with a tier-one mobile phone manufacturer has me doing both Java and C++.

What is currently more used ? java ? c++ ?

Here's a link to a thread that has a link to the top 20 list of languages (by usage)
Programming language list

As of this month c++ has moved to 4th place while java remains to be first

One of the benefits of java was that it kept (former C++) developers from making memory allocation and other mistakes. Programmers got lazy, so someone took advantage of that and created a language that gained a lot of notariety in the development world.

With that said, I think you should learn both C++ AND Java.
Some of the techniques you can't escape in Java are actually good ideas you can use in C++ (like interfaces and exception handling). If you learn to do those things in C++ now, you'll avoid the sloppy trap that eventually drove some developers away from C++.

I think if you understand C++ concepts well, Java should not be a problem. It will be even simpler. The only difference will be in the syntax which is a matter of practice.

Its not a compiled language, right ?

Java source code is compiled into byte code which is then JITed into an executable code. Try searching for Just In Time Compiler, you might get a clearer idea.

As far as i know, you can't be a good programmer by just having mastery of one language. It is the collaborated knowledge of different paradigms & languages, that you get to the position of being a good programmer.
As far as C++ & Java, both are used for making commercial apps. Example

Exceptionally big commercial softwares Written in C++:
Adobe AE (Almost the king of motion graphics)
Adobe Contribute
Adobe Dreamweaver etc etc etc
Almost whole of the Adobe creative suits are written in C++
(And i might not need to specify how big these softwares are)
Add Autodesk Products (maya, autocad, 3d max etc) to the list too....

Now about Java, Java is used everywhere, embedded devices, mobile phones, enterprise servers and even supercomputers (Yes, they are). Don't feel underwhelmed for java just because i wrote less for that, i am currently a c++ learner.

So my verdict is, it doesn't make any sense to choose one just because one is considered to be faster, used more extensively etc etc

You want to be a good programmer who is exceptionally adaptable, don't stop at C++ or java, learn more even if you find it difficult. At least thats something we conclude from the statistics.....

Hope this helps you.....

Thanks for your help

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.