Sunday, August 2, 2009

What are the prospects for c++, what kind of a role do u think it will play in software dev,say 5 yrs frm now?

is c++ as useful as java/.net? is it good if i start learning this lang now?

What are the prospects for c++, what kind of a role do u think it will play in software dev,say 5 yrs frm now?
I completely agree with Vox Sola, but I add something to what he said.





C++ is not for faint-hearted people.





If you are good at coding and like algorithms, if you like to micromanage things ... then c++ is for you; but if you like patterns and software architecture ... then leave it alone or it will make your life sorry.
Reply:C++ will always be the bread and butter of the programming world simply because it allows so much flexibility and is only limited by the programmers skill and knowledge with the code.





Java and .net, whilst being emerging languages will not make C++ obselete, if anything over the next few years C++ programers will become even more valuable as specialists. One thing C++ will always have over these other two is speed. If you can prove to someone that you can code something incredibly lean and efficient with one of the fastest programming languages then they will hire you over some java/.net programmer.





However, despite this, as a programmer in an rapidly changing IT world you know you have to keep ahead of the game to stay in it, so learning java and .net will help keep you with the rest of the pack.





One thing you can safely assume and that is programming in general is a safe career for the long term future.
Reply:There are more lines of code written in Visual Basic than any other computer language in the world. While C++ is a good language, it is not the language used in most businesses. According to my studies, most businesses use Java and .NET over C++.
Reply:C++ will remain relevant for a very long time. It is still used by countless companies and is the primary language for game development as well as other things.





This is due to two reasons, first is habit. C has been around for a long while and C++ is an extension of C, old habit die hard. Secondly, the C++ compiler converts code into stand-alone exe-files while C# and Java relies on having a framework to handle just in time compilation.





While they are faster than purely interpreted languages, they're no match for the raw speed of C.
Reply:C++ will always have a home in computational intensive algorithms and embedded devices with small amounts of memory. Drivers will continue to be developed in C++ or assembler. Games will certainly not shy away from the raw power of C++.





Is it as useful as .Net? .Net is terrible for complicated tasks. Many a time I have written little Dlls containing fast algorithms for certain tasks, and then link them together with .Net apps using the P/Invoke technique. .Net simply is not made to run computationally intensive code with its extra error checking and random garbage collection.





I highly recommend learning C++ even if you only plan on using .Net or Java in the workplace. It can make all the difference between a programmer and a skilled programmer.


No comments:

Post a Comment