Is .Net needed for C++ desktop development?

  • Thread starter Thread starter Bartlet
  • Start date Start date
B

Bartlet

Hi All,

I'm a 10+ year c++ developer (99% desktop apps) looking to the future
(as the few of us still working have learned to do).

Everyone seems to expect you to have experience with .Net, so I'm
looking at it for the nth time, trying to figure out how I'm going to
use it.

In a strong parallel to Java, every place I've worked for asks me
questions about it, then proceeds to never talk about it again post-
interview.

Currently I work in a large web tool company and still haven't seen any
actual .net code (though people do talk about it in the sort of I-don't-
know-anything-but-if-I-admit-it-I'll-get-layed-off way that everyone
always talked about COM).

In my news browser I see these message counts:

NewsGroup | Messages
===========================
m.p.d.f.vb | 30k
m.p.d.f.csharp | 23k
m.p.d.f.aspnet | 20k
m.p.d.f.general | 12k
m.p.d.f.vc | 4k <-- C++ guys are 1/3rd the 'general' crowd.


Is there any reason to pick up on this .Net thing when I'm only working
C++ desktop apps?

If so, does anyone know any good what-is-.net-without-marketing-terms
books?


-Bartlet
 
First of all, Microsoft continues to support and invest in C++ for both
native (Win32) and managed (.NET Framework) development. This will happen
for a long, long time.

The biggest reason you should consider the .NET Framework today (managed
code) is that Microsoft's developer future is centered around it. At the PDC
this year, the developer preview of Longhorn (the next version of Windows)
was released to attendees, showing that the primary developer interface,
WinFX, is an evolution of the .NET Framework. While Win32 will continue to
be supported and invested in, WinFX will be the primary entry point for the
vast majority of developers.

Although you can continue to be successful with native C++, you may find
that .NET opens more doors due to the improved productivity you get from
managed code (deployment, garbage collection, security, etc) and the fact
that you can reuse the skill investment across Web and mobile development as
well.

If you're interested in reading up on some of the other benefits of managed
coe and the .NET Framework, check out
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vcmex/html/vcconMCOverview.asp.
 
Is there any reason to pick up on this .Net thing when I'm only working
C++ desktop apps?

Sadly yes. Microsoft has decreed that .NET is the future. And lo! it will
come to pass. ;-)

VC++ .NET Standard is pretty cheap, so I recommend getting a copy and
playing with it. My software came with a book called Visual VC++ .NET
Step by Step, which seems to cover everything needed for a good run at
this. The two main elements are the library (.NET application framework),
and Managed C++.

From what I can see so far, .NET boils down to a class library rather
similar in nature to those that come with Java. It should be a
doddle to learn how to use it. It seems well documented.

The GUI components in particular have similar features to those in
Borland's VCL and seem simple enough to use. Way, way easier to learn
than MFC or plain API. You can probably develop desktop apps easily
with this library and ignore all the other .NET stuff until it comes
up in your work (the other 1% you mentioned). That is my intention at
this stage.

Managed C++ involves a huge raft of __keywords apparently intended to
make C++ exactly like C#. Nothing about it seems hard to learn, but it
makes me uneasy because of the extent to which it seems to break Standard
C++ and, consequently, my normal ways of working. Having said that, I'm
still a beginner.

I have read a great deal of hyperbole about Managed c++ but must
be missing something. I would dearly like to find some more objective
articles to help me understand its benefits, if any, and costs. [I
believe no competent C++ developer needs a garbage collector (thanks to
RAII); as for security I would not trust Microsoft to lock my car; I don't
understand why language neutrality is so desirable - language choice
is not 'just syntax'.] No doubt my concerns are unfounded.

Hope this helps.


Arnold the Aardvark

Regarding COM: speak for yourself, mate! :-)
 
Back
Top