Thursday, April 12, 2007

The future of C++ Programming with Visual Studio Codename Orcas

The MVP Summit also involved many good up-close sessions with the technical people from the Visuai Studio / Visual C++ team. This was Microsoft's way of getting feedback from people like me who are in close sync with the development community about pain points of the past, and features that newer versions of Visual Studio (Orcas, for now) will come up with.

One of the most important aspects about Orcas is the continued investment and commitment that Microsoft seems to display with respect to supporting and improving the C++ language features.

Here are some details related to enhancement towards programming in Managed C++ (the .NET version of traditional C++ language) -
  • STL will come with a managed version for those that would like to use STL containers in Managed C++
  • These STL containers will allow for easy conversions / interchange between STL Container types and .NET Types. For example - a std::map returned from C++ code can be received as an IDictionary object in C#.
  • Marshalling support will be extended via new templates that allow for ease of managing unmanaged memory in MC++ applications.
Unmanaged C++ will eventually feature -
  • A cooler version of MFC that will support VISTA like User Interface (yes, using MFC would not necessarily mean that you'd be stuck with Win 95 style controls!), and wrapper classes that supply more usable buttons et al.
  • There would be support for Vista UAC - if you have build C++ applications that need UAC elevation in VISTA using current versions of Visual Studio, then you know how painful it is to create and embed that manifest, for the moment.
  • Faster builds
  • Refactoring features (like intelligent Find / Replace that you see when programming in C#)
  • Squiggles for C++ code (akin to those squiggly-underlines you see when you type a syntactically incorrect line of code in C#).
  • Issues like Modules and Concurrency issues for Multi-Core / -Processor platforms were considered important.
The discussions were all very involving and throughly interesting. The days featured exhaustive sessions and the evenings featured parties that were just as good!

No comments: