im learning C++ and it seems like for windows programming theres a trillion variants that i have no idea about, like MFC, API, C#...wth does all that mean? whats used most commonly today for windows programming, like applications and stuff.
Adverts help to support the work of this non-profit organisation. To go ad-free join as a Member.
![Photo](https://www.longecity.org/forum/public/style_images/master/profile/default_large.png)
whats the typical programming language
Started by
knite
, Jan 28 2006 01:12 AM
5 replies to this topic
#1
Posted 28 January 2006 - 01:12 AM
im learning C++ and it seems like for windows programming theres a trillion variants that i have no idea about, like MFC, API, C#...wth does all that mean? whats used most commonly today for windows programming, like applications and stuff.
#2
Posted 28 January 2006 - 04:36 AM
My usual focus is on Linux and OSX, but I'll give this a shot.
Most commonly used for windows... For shrinkwrapped programs I'd say C++ with MFC, done in Visual Studio. I haven't touched it in years, but I remember hating MFC. For anything but cpu intensive coding, my recomendation would be c#. Microsoft's put a fairly heavy push into urging developers to use it. And, I have to say, what I've seen of it does seem pretty nice.
If you don't mind being forced to keep your program open source, or paying a $2000 licencing fee if you do want it closed, my recomendation for C++ is using trolltech's QT. It's a widget set, along with a lot of network and other functions, that offer amazing crossplatform performance. It's the only way I've ever really found myself enjoying using C++. The form designer is pretty nice as well. WxWidgets is somewhat similar, but free. Sadly though, it's also a lot more annoying to use and doesn't 'quite' look perfectly native on all platforms.
Most commonly used for windows... For shrinkwrapped programs I'd say C++ with MFC, done in Visual Studio. I haven't touched it in years, but I remember hating MFC. For anything but cpu intensive coding, my recomendation would be c#. Microsoft's put a fairly heavy push into urging developers to use it. And, I have to say, what I've seen of it does seem pretty nice.
If you don't mind being forced to keep your program open source, or paying a $2000 licencing fee if you do want it closed, my recomendation for C++ is using trolltech's QT. It's a widget set, along with a lot of network and other functions, that offer amazing crossplatform performance. It's the only way I've ever really found myself enjoying using C++. The form designer is pretty nice as well. WxWidgets is somewhat similar, but free. Sadly though, it's also a lot more annoying to use and doesn't 'quite' look perfectly native on all platforms.
sponsored ad
#3
Posted 28 January 2006 - 03:07 PM
Well, I mostly do Windows programming, unless it's small apps or tools, in which case I use mingw32 or djgpp from a DOS prompt (especially if I want it portable to other OS's).
As for C#.NET, or probably just about anything .NET, the language almost isn't important. At work, we're converting from C++ to VB.NET, which is a pain. But we also had a few programs that were in C#.NET, and converting them to VB.NET was a completely mindless task: you can literally change line-for-line at a rate of about 20-60 lines per minutes. In fact, there are tools on the internet to do the conversion automatically, though I don't trust them 100%.
The point is, once it's in a .NET language, it can be converted to one of the others in no time. I think there are only a few things you can do in C# that you can't do in VB, and they're complex shortcuts that aren't for the faint of heart: if you know how to use them, you're probably not a VB programmer anyway.
So if you like C++, then go with C#.NET. If you like VB6, then go with VB.NET (it's a lot to relearn, as you might imagine, since they've effectively made C++ 6 and VB6 into a single language with two flavors, C#.NET and VB.NET respectively).
But like emerson said, this would only be for non-CPU intensive work. For CPU intensive, C or C++ with MFC are still your best bet, if you have the patience to write 5-10 times the code to get the same work done. Also, you can link Intel's compiler into Visual Studio, buying you an extra few percent performance for CPU intensive stuff.
As for C#.NET, or probably just about anything .NET, the language almost isn't important. At work, we're converting from C++ to VB.NET, which is a pain. But we also had a few programs that were in C#.NET, and converting them to VB.NET was a completely mindless task: you can literally change line-for-line at a rate of about 20-60 lines per minutes. In fact, there are tools on the internet to do the conversion automatically, though I don't trust them 100%.
The point is, once it's in a .NET language, it can be converted to one of the others in no time. I think there are only a few things you can do in C# that you can't do in VB, and they're complex shortcuts that aren't for the faint of heart: if you know how to use them, you're probably not a VB programmer anyway.
So if you like C++, then go with C#.NET. If you like VB6, then go with VB.NET (it's a lot to relearn, as you might imagine, since they've effectively made C++ 6 and VB6 into a single language with two flavors, C#.NET and VB.NET respectively).
But like emerson said, this would only be for non-CPU intensive work. For CPU intensive, C or C++ with MFC are still your best bet, if you have the patience to write 5-10 times the code to get the same work done. Also, you can link Intel's compiler into Visual Studio, buying you an extra few percent performance for CPU intensive stuff.
#4
Posted 31 January 2006 - 03:45 PM
I run a java / jsp dev team and we needed to build a fairly feature rich fat client that hooked up to our middle-tier java components via SOAP. We looked at AJAX, Java Swing, Flash and Microsoft Visual C#. While we probably could have accomplished the GUI in any one of them
we ended up going with Visual C# 2005 and overall the project has gone very well. Microsoft has invested a lot in C# and it shows.
we ended up going with Visual C# 2005 and overall the project has gone very well. Microsoft has invested a lot in C# and it shows.
#5
Posted 03 May 2006 - 08:44 AM
avoid MFC.
C# in .NET is probably a lot better than C/C++.
if you don't know what an API is, you have a long way to go. good luck.
C# in .NET is probably a lot better than C/C++.
if you don't know what an API is, you have a long way to go. good luck.
sponsored ad
#6
Posted 03 May 2006 - 03:08 PM
There is not defacto standard programming language for any platform.
I personally think Delphi is the best language around. It does not have the market share that c# or VB have, but is very full featured, easy to learn, powerful, and fast to build apps. Let me know if you want more info about it. www.borland.com
I personally think Delphi is the best language around. It does not have the market share that c# or VB have, but is very full featured, easy to learn, powerful, and fast to build apps. Let me know if you want more info about it. www.borland.com
1 user(s) are reading this topic
0 members, 1 guests, 0 anonymous users