Future of C++ and .NET/WinFX

Tech Tip: Click here to run a free scan for Windows Errors and optimize PC performance

From: Jason Vene (jason_l_vene_at_yahoo.com)
Date: 09/30/04


Date: Thu, 30 Sep 2004 18:51:58 -0400

I've looked at recent posts and not found material, but I'm new to the
board, so please forgive if this thread has come up before.

I'm facing a conundrum about development of business applications which have
robust user interface requirements (sorry, details must be kept private).
The UI will be required to present images, graphs (more akin to signals than
charts, like a wave file editor), various custom controls (some are full
scale windows that allow users to move 'objects' around - something like
what vector graphic editors do, but not for drawing pictures - for editing
data from SQL), and lots of other fun stuff.

I'm an old C++ die hard, so I'd rather use C++ than anything else. Besides,
I need to leverage a set of class libraries I've collected and developed
over 15 years (yep - I'm a graybeard). What worse, and my apologies for
bring this into the mix on a MS board, is that I need cross platform
development strategies. I have them when building in C++.

Now we face .NET, and MS is pushing hard for the development of .NET
applications. It would seem that C++ is the odd man out of that loop. I know
we can generate both mixed and fully managed code targets, but as I
understand it they will not (or ever) be "verifiable" code. I'm not really
sure I understand what that means, but I think it means that many of the
future benefits of .NET will be limited to the other .NET languages.

I'm guessing, despite the reading I've done on the subject, that among the
many potential business benefits will be the ability to "rent" software
through the 'net, deploy sample applications through the 'net, and create
applications that take the position Java was supposed to occupy. I
understand many of the technical reasons C++ might be "untrusted" in a .NET
target, compared to C# (I've created some mixed target applications during
my investigation of VS.NET2k3).

I also know there are means of doing that without .NET, but my concern is
that if MS pulls .NET off as expected, consumers will begin to expect .NET
features that may require a non-C++ .NET language. I'd rather that not be
the case.

Have I missed something here? Will it be possible for C++ targets to take
advantage of every benefit of the .NET future? Should I consider a roadmap
that migrates my code toward C# rather than managed or mixed C++?

While I'm not targeting applications the likes of Photoshop, Maya or some
non-linear video editing package, I'm far above the lesser requirements of
standard "bag-of-fields" type business applications, and would benefit
greatly from mixed C++ (or all unmanaged C++). How would this play out for
WinFX targets? Must I be forced into mixed mode programming to take
advantage of Avalon?

I don't believe the C# languages currently in open source for Linux (the
mono project) will be "allowed" to survive, nor do I think they'll do any
better than Java under Unix or Mac (compared to Java under Windows). This
makes cross-platform targets more work if C# becomes a requirement, so I
really hope to avoid the language without loosing access to features users
may come to expect in, say, 2006 through 2008.

Where are you going, in say, two years?



Relevant Pages

  • Re: where do you store app wide data?
    ... Not the JVM.. ... Java applications. ... thats the fault of whoever wrote the application - not Java. ... Files are not stored in RAM when you close them. ...
    (alt.php)
  • Re: Giving an application a window icon in a sensible way
    ... Java app. ... At the time I made the initial posting to this thread, a google ... applications (they involved requesting the icon from a URL, ... or accomplish things on your own. ...
    (comp.lang.java.programmer)
  • Re: Java on VMS
    ... > We are very happy with java on VMS. ... > applications causes problems, ... Mac will often make use of 'resource forks', ...
    (comp.os.vms)
  • Re: How do I prevent a port from installing?
    ... It is quite possible that there are no applications ... that depend on ant for running and at the same time it is likely ... Given that I do not feel I can afford to have Java on the system, ... Dependency: xproto-7.0.10_1 ...
    (freebsd-questions)
  • Re: *Beginner Que* - Servlet - What all do i need on my Comp to run Servlets???
    ... need Java EE SDK or can i just add a Servlet Package to a Java SE SDK ... For running Servlets you need a server like Tomc@ or Jetty. ... An application server to test your J2EE applications. ... I like checking out the Computers at this website for good, ...
    (comp.lang.java.help)