Thursday, September 28, 2006

 

C# to C++ - learning C++ with wxWidgets

The invention of C# was a really clever move by Microsoft. It is similar enough in syntax to appeal to Java users, just as easy to use as VB, and only a fraction (5% IIRC) slower than C++. I started using it because I was taught Java, but wanted something that was faster and easy to use with regards to Windows programming, and C# is that. The bottom line is that for Windows programming, C# is by far and away the easiest language to use, unless you really need that extra 5%. This is borne out by the amount of C# software that is being written these days. Many companies don't advertise for MFC developers anymore, they want C# developers, and even ATI write their GUI for controlling their graphics drivers in .NET. And thanks to the efforts of the mono-project (which I've yet to try but apparently works quite well) C# programs can now be compiled and run on linux.

Yet there is no getting away from the fact that, sticking with our example of ATI, the graphics drivers themselves are almost certainly not written in C#. C# and .NET neatly hide away a lot of under-the-hood information about how software interacts with hardware, and how a program actually works. This is fine, but out in the wide-world I feel it's probably a good thing to get a broader view, and so I've finally taken the plunge and make the effort to start learning C++.

So, from my experiences in the last week or so, here are few bullet points with advce for those people who want to transfer their C# to C++:

Those are your first steps, in my recommendation. Over the next few weeks I'll be posting up little articles on my progress, as much to clarify my thoughts and learning experiences as anything else, but also hopefully to help anybody whose googling has found this blog!

This page is powered by Blogger. Isn't yours?