Recommended Posts

Is learning C++ a little pointless these days when we have more powerful languages such as .NET/Java? It seems like it can do all that C++ can, yet make development time much faster, less error prone, etc. I figure the only reason to learn it is to maintain programs written in C++, which is 90% of the world. Should it be still considered a large focus?

Share this post

Link to post

Share on other sites

Alright. Personally speaking, I just know anyone can learn 50 languages, but one can master an area using a certain language. For instance, knowing C# requires you to learn ASP.NET ontop of that, including mobile & graphics programming. Learning C++ is a complete opposite end of what you need to learn with it, as much as Java is in its own area: Java3d, mobile, smart cards, etc. It seems like after learning each language, one needs a focus. I guess that's what I'm stuck on.

Share this post

Link to post

Share on other sites

Let's put it this way. When I started programming, Windows didn't exist and C++ was still C with Classes, a baby project at Bell Labs, yet to be released to the world as a whole. I still have a book on how to program Fortan on punch cards. Things change. Whatever you learn now, you'll need to learn something different ten years from now. Learn to learn. Do things that interest you and pick up new things that interest you as they come along. As long as you keep your brain in motion you're set.

0

Share this post

Link to post

Share on other sites

I understand C++ is powerful, but I personally think it's not very convienent. For example, COM, GUI, DX, etc. I guess that's why I appreciate Java/.NET. You throw in the button and be done with it, and yet have that same flexibility as you did in C++, but more leaning on .NET's side.

Anyway, I'll try focusing on them all, but I still beleive each language is just a tool to use its main features (mobiles, etc.), which differ on how Java would do it, or on how C++ or C# would do it. Each requires a long study in each area.

0

Share this post

Link to post

Share on other sites

If you feel comfortable using .Net for what you need to do, then I say: do it. Don't feel you have to learn a language because there is the potential you may one day have to use it. That's not a good attitude, and you will end up frustrated. If you don't have any interest in learning the language (and it sounds like you don't) then don't learn it.

If, on the chance you wind up in a position where you have to work with someone elses C++, well, then thats the fault of the person who is employing you not recognising where your strengths as a programmer lie.

And in any case, programming is equal parts logic, structure and planning. Be it on a high level or low level, it's all the same. The problem is that understanding the language is a small part at the beginning, that one hurdle before you can start learning those three key disciplins. The way you build skills in those areas is not by spreading yourself thin and getting the basiscs of many different languages, it's by repeated exposure to a familiar language, therefor you refine your abilites in those key areas, because you are now fluent in the language.

When your new to a language 99% of what you do is try to remember the syntax and structure, thinking about the code at hand. When your fluent in the language, you can think the code faster than you can type it, so it becomes 99% thinking ahead. Big difference.

Share this post

Link to post

Share on other sites

Original post by JDC++ hands down for all the reasons you'll find out later.

No reason to consider any of the other languages?

Quote:

Original post by noVumDefine "powerful". C# and Java still don't come close in terms of language features to C++. If you need a RAD language then they are useful, but C++ is still the most powerful language imho.

And beside of that if you REALLY know C++ then all imperative languages are a piece of cake.

...I don't really feel like arguing this post at this momment in time. Anyone else want to take it?

All in all, it doesn't matter what language you choose to learn, what matters is that you pick up the concepts that come with the languages. Once you have the concepts, it's easy to pick up any language's syntax.

0

Share this post

Link to post

Share on other sites

"The most important thing to do when learning C++ is to focus on concepts and not get lost in the language-technical details. The purpose of learning a programming language is to become a better programmer, that is, to become more effective at designing and implementing new systems and at maintaining old ones. For this, appreciation of programming and design techniques if far more important that an understanding of details; that understanding comes with time and practice."

Replace "C++" with your programming language of choice. It's all the same. A nickel for the person who knows the author of the quote. :)

0

Share this post

Link to post

Share on other sites

Well, it's been a week or less, but I've been focusing on .NET & Java simply because I'm aiming for applications programming for a career. When time allows itself, I'll learn C++, but most pro's I talk to are telling me to sway to .NET.