In order to produce a plug in and incorporate it (merge) easily with Visual Studio 2010.

I was wondering which language was used by Microsoft to create it?

In order to offer our product to Microsoft, we must know which language is better to integrate with Visual Studio.

Was it pure C++? A friend of mine told me it was written in C#.

closed as off-topic by Jim G., user40980, jwenting, mattnz, Bart van Ingen Schenau May 27 '14 at 7:44

  • This question does not appear to be about software engineering within the scope defined in the help center.
If this question can be reworded to fit the rules in the help center, please edit the question.

  • 11
    You seem to be on a wrong way. To write plugins, you don't have to care about the language used to create Visual Studio, but the technology used to extend it, i.e. MEF. – Arseni Mourzenko May 10 '11 at 21:06
  • 2
    I want to echo what MainMa said: As someone who used to work in Visual Studio (Team System Database Edition - "TeamData"), I can tell you that while Visual Studio was initially built in C++, a very large proportion of the features in newer versions of VS (2008 and 2010 in particular) were written in C# & .NET. TeamData, for example, was 99.999% pure C#. If you want to write add-ins for VS, you can build them in C++ or C# - it depends entirely upon the complexity of your code, how fast you need it to be, how much memory you're willing to consume, how productive you want to be, etc. – Richard Turner May 10 '11 at 22:08
  • 18
    Was visual studio made using visual studio? – Peter Olson May 10 '11 at 22:59
  • 3
    I built a VS2010 plug-in recently and had no idea what language Visual Studio was written in, nor did I need that information to create the plug-in. The plug-in API abstracts you from having to directly interact with the Visual Studio code. – JohnFx May 11 '11 at 1:37
  • 4
    This question appears to be off-topic because it is about the ingredients of a specific software application. There is no problem to solve. – Jim G. May 25 '14 at 23:26

It was written using WPF, so that would be XAML and (most likely) C#.

Wikipedia just states:

The IDE shell has been rewritten using the Windows Presentation Foundation (WPF), whereas the internals have been redesigned using Managed Extensibility Framework (MEF)

which doesn't help with the non XAML part.

I suspect that there will be C++ elements in there too.

Expression Blend uses WPF too.

Interestingly I've not been able to find any more information on this other than "it was written in WPF".

  • just bc its WPF does not mean C#: you can write WPF using VB as well as C# :) – Muad'Dib May 11 '11 at 4:45
  • 1
    @Muad'Dib - I know. I should have made it clear I was assuming C# rather than VB.NET or even F#! – ChrisF May 11 '11 at 7:49
  • @Muad'Dib: They're all the same thing anyway... – Mehrdad May 2 '12 at 6:19
  • 1
    @Mehrdad That's a common misconception. That's like saying C and Pascal are the same because the compilers both compile to native code. – MetalMikester May 2 '12 at 10:31
  • 1
    @MetalMikester: I haven't used Pascal, but I'd imagine there's a world of difference between C and Pascal. For one thing, even the philosophy of C is unique: it favors undefined behavior over error checking, which allows for optimizations. For another thing, their standard libraries are different. By contrast, there is very little difference between C# and VB.NET -- both are managed by the CLR, their standard libraries are exactly the same, and they run with the same philosophies. The only 'differences' are superficial syntax differences, not something any more deep. – Mehrdad May 2 '12 at 15:09

Much of the interface of Visual Studio 2010 was written using WPF (C# and XAML), but they had so much good working code already built in C++ (I think I remember hearing that a good portion of Intellisense is still in C++, but I may be wrong) that they kept and built on top of. Check out Snoop to take a peek at the internals of the interface.

You can learn more about the development of VS2010 by watching this video: http://www.microsoftpdc.com/2009/CL09

In regards to developing an extension for Visual Studio, assuming that's what you are doing, I would recommend C#.

  • just bc its WPF does not mean C#: you can write WPF using VB as well as C# :) – Muad'Dib May 11 '11 at 4:46
  • That's true. But I think I did hear or read that they used C# (if my memory serves correctly). – awmckinley May 11 '11 at 4:52

Not the answer you're looking for? Browse other questions tagged or ask your own question.