.NET for Desktop?

G

Guest

I use .NET for web but I have been holding off using .NET for desktop apps.
This is because I think it is lower performance and because customers would
need to install Framework which is large.

1. Is .NET recommended for desktop apps? If so, are there exceptions that
would still warrant using C++/MFC and not .NET?

2. Are any ISVs using .NET for major desktop apps? I don't even think
Microsoft apps such as Office use .NET - will .NET be used in Office 12?

Thank You!
 
B

Brendan Green

1. .NET is fine for the desktop. If it wasn't, Microsoft probably wouldn't
have invested anything in WinForms.
2. I'm sure if you did a search in Google, you'd find plenty of commercial
apps written in .NET. I used to use SourceGear's VALUT product, which is
..NET.

Finally, not having a go at you specifically, but why do people always
question why Microsoft isn't using .NET for, say, Office? Do they not
understand that there is an enourmous existing code-base that they'd work
off, and that to re-develop everything would take quite a significant amount
of time?
 
G

Guest

... why do people always
question why Microsoft isn't using .NET for, say, Office? Do they not
understand that there is an enourmous existing code-base that they'd work
off, and that to re-develop everything would take quite a significant amount
of time?
1. So are you saying that companies with existing code bases should not
migrate to .NET for existing desktop apps? Is Microsoft beginning to migrate?

2. Also, I still ask about performance and the need for customers to
download the Framework which is large.

3. Is Windows Forms the GUI to use for desktop? Are there any exceptions
whereby one would still choose MFC? How about DirectX?

I am at a decision point and these questions are important.

Thank You.
 
A

Arnaud Debaene

Greg said:
1. So are you saying that companies with existing code bases should
not migrate to .NET for existing desktop apps? Is Microsoft beginning
to migrate?
If migration is only for the sake of migration, and there is no added value
for the customer, I would say that this is always a bad choice to migrate to
the last "cool & fun" technology, because migration will always introduce
new bugs.
2. Also, I still ask about performance and the need for customers to
download the Framework which is large.
Many desktop apps are still distributed on CDs or DVDs, where framework
redistribution is not problem.
3. Is Windows Forms the GUI to use for desktop?
There is no one definitive, absolute answer! One can write very cool Win32
desktop apps with the raw Win32 API, with STL ,with QT, with WxWidgets, with
MFC, with Winforms....
Are there any
exceptions whereby one would still choose MFC? How about DirectX?
DirectX9 had a managed interface that can be used from .NET

Arnaud
MVP - VC
 
G

Guest

Arnaud Debaene said:
If migration is only for the sake of migration, and there is no added value
for the customer, I would say that this is always a bad choice to migrate to
the last "cool & fun" technology, because migration will always introduce
new bugs.
How about adding new features to existing products? Would it make sense to
add the new features with .NET?
Many desktop apps are still distributed on CDs or DVDs, where framework
redistribution is not problem.
Yes but download is a key delivery method today and so I think the Framework
may deter some customers (e.g. dial up modems) especially for free software
trials (i.e. try before you buy) for example.
There is no one definitive, absolute answer! One can write very cool Win32
desktop apps with the raw Win32 API, with STL ,with QT, with WxWidgets, with
MFC, with Winforms....
Yes, but isn't WinForms the superior technology? Isn't that one of the key
..NET features/advantages?
DirectX9 had a managed interface that can be used from .NET

Thank you Arnaud.
 
D

Daniel O'Connell [C# MVP]

Greg said:
How about adding new features to existing products? Would it make sense to
add the new features with .NET?
Will using .NET make upgrading the product easier or cheaper? Does it enable
the new features? If not it might be better not to move yet.
Yes, but isn't WinForms the superior technology? Isn't that one of the key
.NET features/advantages?

WinForms is pretty much a wrapper around raw Win32. Its easier to work with,
but nothing terribly superior. Its value is in ease and the 3rd party
controls available.
 
C

Cool Guy

Daniel O'Connell said:
WinForms is pretty much a wrapper around raw Win32. Its easier to work with,
but nothing terribly superior.

The only problem I have with WinForms is that IME its performance is *far*
inferior to raw Win32.
 
A

adebaene

Greg said:
How about adding new features to existing products? Would it make sense to
add the new features with .NET?

Possibly : if you can integrate new features in .NET within an
existing, native, app and .NET provide some clear advantage for
developping these new features, this may be one way to go.

Yes, but isn't WinForms the superior technology? Isn't that one of the key
.NET features/advantages?

Define "superior" technology... There is no simple measurement of such
a thing! To begin with, you should take into account the cost of the
learning curve for your developpers when switching to .NET.
Next, there are pro and cons in .NET : For example, C# expressiveness
in clearly inferior to C++'s one (no synchronous destructors, no
templates, etc....), but C++ is more "dangerous" (raw pointers, unsafe
casts ....).
On the other hand, the Winforms framework is far superior to MFC when
it comes to object model, the broad coverage and quality of the
framework made if often easier and faster to code some components,
etc... Comparison can go on and on forever... At the end of the day,
it's more a matter of personnal taste and feeling than a clear,
rational, choice.

Arnaud
MVP - VC
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top