The Code Project is a popular resource site for Windows developers. It has polled its users on what programming language they use; see here for the details. Three points to note:
- Visual C++ 6.0 still has high usage – nearly on a par with Visual C++ 2003 and 2005 combined. 19.78% vs 20.34% at the time of writing. I wonder if C runtime issues are a factor here. Visual C++ 6.0 is the last version that links to the standard mscvrt.dll; see Visual Studio 2005 DLL Hell for more details. That’s why I still have it installed on my machine. If that’s not it, I’d be interested to know why so many are still using this old product.
- By contrast, there has been rapid C# 2.0 adoption. 18.93% C# 1.x versus 44.32% C# 2.0. I can understand this; .NET 2.0 is considerably improved over 1.x and there is little reason not to switch.
- Finally, there is a decent showing for Delphi at 24.54%. No surprise here; it’s a fantastic tool for Win32 coding. I guess the problem for Borland is that many are still using Delphi 7.x or earlier versions.
Note that the percentages add to more than 100% because programmes use mulitple tools; and that this is not a reliable snapshot of anything other than Code Project’s community.
Funnily enough, I have just started using Visual C++ 6.0. As you know I’m a VB/VB.NET/C# programmer but I have decided to learn C++ for several reasons:
* My brain needs to be stretched again
* There will still be a need for C++ skills regardless of how ‘managed’ teh Vista API becomes
* I’d like to learn to program to a high degree of control of the machine.
So why Visual C++ 6.0? Well, the copy I have fell off the back of a lorry, but I’d choose this in preference to VC++ 8.0 as there is ONE lagnuage to learn instead of two: the latter’s managed extensions are almost a second langauge in their own right. I also DON’T see the popint in using a low-level language if you are going to circumscribe what you do with it by using a mostly managed interface to interact with the machine.
I am ploughing through Ivor Horton’s excellent book on learning VC++ 6.0 and this convinces me that there will always be a need for the Office-model of document/view application programming, and that MFC’s future is assured.