ATTENTION: You are viewing a page formatted for mobile devices; to view the full web page, click HERE.

Other Software > Developer's Corner

C++ Development: win32 or .NET?

(1/3) > >>

As you probably can tell from this question that the I'm beginning to delve into the world of desktop development. Having spent the last 3 months getting up to speed on C++ and VS IDE, I'm at a fork road now trying to decide which way to go, C++ with native win32 or .net.

Can the gurus on this site validate my understanding of this subject and provide their insights please ...

There are 3 ways to develop windows GUI apps with C++:

* by calling win32 API directly 
* using MFC
* using .NET 
My understanding is ...

1- Using direct API calls is obsolete and is not being done nowadays.

2- Most of the existing apps are probably developed using MFC. However, this technology is gradually and officially phased out in favor of .net

3- For a starter like myself and when developing apps from scratch, is there any reason why I should NOT abandon win32 MFC projects. In other words, what does win32 offer that .net does not?

4- If I do go for C++ .net, my next dilemma is why? C++ is not, by design, optimized for the .net. I should as well just go to C#. Can anyone think of any reason why I should look back to C++ to develop my app in respect to using C# directly.

5- Almost all books I read stated that apps written in C++ .net vs. win32 compare (if not faster) response-wise and are more stable. There are, however, a very limited number of apps on the high end of industrial performance that will always benefit from win32. Is is true if my scope is simply DK development, I should NOT be concerned about any stability or performance issue developing in .net?

6- Finally, can you by looking at an app on your DK tell if it was developed via win32 vs. .net? And how? For example, are there controls that can only be used via one and not the other?

Thank you all

Use wxWidgets. Not only is it a very nice and complete API to work with, it will also allow your programs to be compiled on different platforms other than windows.

what is DK?

if you are going to do .net from scratch, i'd say go for c#.
the only time i'd recommend c++ .net stuff is for legacy code.

what is DK?-mouser (August 06, 2007, 01:15 PM)
--- End quote ---

Sorry ...

- what about c++ win32 vs. C# .net?
- How is FARR developed? Is it a win32 project? What IDE did you use?

FARR is built using Borland's C++ Builder, which is basically c++ and an added layer of visual components for windows gui stuff, and a nice IDE.  It's a commercial product but you can use the new version (Turbo C++) for free if you don't need to install 3rd party components.  Its 100x nicer to do gui programs using c++ builder vs. mfc or native win32 api, in my opinion.

I'm a long time c++ coder (20 years), and it's hard to break old habits, but c++ is showing it's age these days -- and i never recommend it to new programmers.  you'll have a happier experience and learn better coding technique using a more modern language like C# or Java.

In general though you have to ask yourself what you want to code?  Do you want to do cross-platform stuff? then you can forget c++ builder. and win32 stuff.  wxwidgets could work if you still were dead set on c++.  If you just want to get a little experience coding and learn basic techniques, and windows is your main operating system, then go for c#.


[0] Message Index

[#] Next page

Go to full version