使用.NET Framework编写什么语言?
实际上,我一直想问的问题是,害怕.NET Framework写的是什么语言? 我是说图书馆本身。
在我看来,它主要是C和C ++。 (我希望Jon Skeet正在读这篇文章,听听他的想法会非常有趣)
CLI / CLR是用C / C ++和程序集编写的。 几乎所有的.NET框架类都是用编译成IL的C#编写的,它在CLR中运行。 如果您在Reflector类中打开一个框架库,您可能会看到一个属性,例如[MethodImpl(MethodImplOptions.InternalCall)],它将调用委托给CLI。
.NET完全是用C和C ++编写的,因为基础是汇编语言。 与新语言相比,用C语言集成汇编语言要容易得多。
.NET框架的一部分是开源的,比如ASP.NET MVC,它是用C#编写的。
由于.NET框架代表了许多程序集,我认为不同的库是用不同的语言编写的。 只要语言符合CLR,就可以用来构build框架的一部分。
尽pipe如此, 我假设.NET框架的大部分是用C ++和C#编写的。
Microsoft .NET Framework被分成许多部分。
CLR :C ++
IO /信号处理 :汇编
基类库 :C#
System.Threading :C#
复杂数据结构 :C ++
示例 :GetHashCode
CLR /编译器 – Visual C ++
基类库 – 简单pipe理C(SMC)
http://blogs.msdn.com/b/jasonz/archive/2007/11/23/couple-of-historical-facts.aspx