# Slow Chat Archives > Slow Chat: Visual C++: Yesterday, Today, and Tomorrow >  [RESOLVED] Refactoring and Class diagrams

## gpuchtel

What are your plans regarding Refactoring support and Class diagrams? It seems C# is given preference over C++ in this area. Also, regarding Class diagrams, I'd like to see round-trip coding support.

----------


## tarekmadkour

Refactoring support and class diagrams are on our list of features to tackle for future releases.

The reason we don't have it now is that delivering a robust feature in this category requires very good integration between the compiler and the development environment; which is something we currently lack. We started implementing the class diagram feature for C++ in VS2005 but we quickly concluded that we will never make it robust enough to be of good value using our current architecture so we pulled it out.

Instead of building a half-working feature on top of what we have, we decided to take the route of building a good compiler foundation for addressing this class of features. Once we have this foundation, we fully plan on building refactoring tools on top of it. Planning is currently underway for building this solid foundation.

The good news is that we expect 3rd party plug-ins to fill the gap that we have until we ship an implementation of our own. The not-so-good news is that we will not have our own implementation in time for our next release (Orcas).

Thanks,
Tarek Madkour
Lead Program Manager
Microsoft Visual C++

----------


## BillG

It is obvious C# has priority.  Can you give us an idea of
the size of the two teams?  How many people work on VC++
(C++/CLI) versa C# -- if not exact numbers -- a percentage
of how much bigger the C# team is than the VC++ team.

----------


## gpuchtel

Tarek, thanks for responding and the opportunity to ask questions directly!

I was contemplating doing exactly what you mentioned; writing them myself; however, I didn't want to do that if something was imminent, which I can see now --  isn't. 

Can you (or someone on your team) provide more documentation/information regarding 'DTE'? For example: 'helpful' links, papers (internal/external) or even some insightful examples? In C++ of course :-)

Thanks in advance
Glenn

----------


## tarekmadkour

The documentation for EnvDTE is at: http://msdn2.microsoft.com/en-us/envdte.dte.aspx. It may not be exactly adequate but it's probably the best concentrated resource you'll find out there. You can also ask a lot of questions at this forum where all the DTE experts hang out: http://forums.microsoft.com/MSDN/Sho...ID=57&SiteID=1

As for the question about the relative sizes of the C++ and C# teams, the reality is that the C++ team is much larger than the C# team. That's not a good judge on the "development power" of the team though since much of a good number of development happens by other teams that support the language teams (as is the case with Class Designer, for instance). The real cause of having more C# and VB support on .NET than C++ basically comes done to what's easier to do. VB and C# only do .NET and consequently their surface areas are much smaller than C++ (which has to do native code, .NET and a great interop layer in between). Also, C++ is a much more complex language (think about all the cool things you can do with the C++ preprocessor that can cause parsers grief). To eliminate this latter issue, we're working on significant architecture changes that should allow tools to have much better knowledge about C++ parser information.

Thanks,
Tarek Madkour
Lead Program Manager
Microsoft Visual C++

----------

