我一直想问的问题,实际上是害怕 - .NET Framework编写的语言是什么?我的意思是图书馆本身。
在我看来,它主要是C和C++。 (我希望Jon Skeet正在阅读这篇文章,听到他对它的看法会很有趣)用什么语言编写.NET Framework?
回答
CLI/CLR是用C/C++和程序集编写的。几乎所有的.NET框架类都是用编译为IL的C#编写的,它在CLR中运行。如果您在Reflector的类中打开一个框架库,您可能会看到一个属性,例如[MethodImpl(MethodImplOptions.InternalCall)],它将调用委托给CLI。
请注意,这只适用于Microsoft .NET。 CLI的其他实现可能有不同的体系结构。例如,在Mono中,很多用Microsoft.NET中的C/C++编写的东西其实都是用C#编写的。另外,微软研究院和其他组织都有元代实现,它们完全用C#编写。 – 2009-08-25 14:30:14
JörgW Mittag - 谢谢,不知道。将不得不看看C#的实现。 – 2009-08-25 17:10:37
这基本上在[StyleCop的历史](https://stylecop.codeplex.com/wikipage?title = A%20Brief%20History%20of%20CSharp%20Style),如果有人想参考引用。 – 2012-04-03 14:26:03
.NET框架的一些部分是开源的,像ASP.NET MVC,它是用C#编写。
由于.NET框架代表了许多程序集,我认为不同的库是用不同的语言编写的。只要该语言符合CLR标准,就可以用它来构建框架的一部分。
尽管如此,我认为.NET Framework的大部分是用C++和C#编写的。
.NET完全是用C和C++编写的,因为基础是汇编语言。与新语言相比,用C集成汇编语言更容易。
Microsoft .NET Framework分为许多部分。
CLR:C++
IO /信号处理:装配
基类库:C#
的System.Threading:C#
复杂的数据结构:C++
例:GetHashCode的
CLR /编译 - 的Visual C++
基类库 - 简单托管C(SMC)
http://blogs.msdn.com/b/jasonz/archive/2007/11/23/couple-of-historical-facts.aspx
从那篇文章中:“我们实际上是在SMC中编写了原始的BCL,这是转换为C#的信心飞跃”。所以.NET Framework BCL实际上是C# – Suamere 2017-08-10 20:02:24
- 1. 使用什么语言编写Go编程语言?
- 2. 应该用什么语言编写API?
- 3. RabbitMQ用什么语言编写的?
- 4. Picasa使用什么语言编写?
- 5. 你用什么.NET语言编写单元测试?
- 6. 用动态语言编写.NET?
- 7. IIS写入了什么编程语言?
- 8. 什么编程语言的隐写?
- 9. 在android中用Init.goldfish编写什么编程语言?
- 10. 现代Unix工具是用什么编程语言编写的?
- 11. 我会用什么编译器来编写机器语言?
- 12. 用什么编程语言编写Sublime Text 2
- 13. Citrix XenApp和Citrix XenDesktop - 用什么编程语言编写?
- 14. .NET编程语言
- 15. Windows:什么编程语言?
- 16. 用什么语言编写的Facebook Questions应用程序?
- 17. 什么.NET Framework使用?
- 18. .NET Framework 3.5 SP1语言包ClickOnce包
- 19. 编写gcc gnatmake Ada编译器的语言是什么?
- 20. 这是用什么语言编写的嵌入式SQL?
- 21. 我应该用什么语言编写2D游戏?
- 22. 什么是用于编写bitbucket的语言
- 23. Visual Studio 2010/2012用什么语言编写的?
- 24. microISV应该使用什么语言编写商业软件?
- 25. 哪个语言的.net框架已被编写?
- 26. AndroidStudio使用什么编程语言?
- 27. 什么语言来编写可移植类库
- 28. Silverlight自己写了什么编码语言?
- 29. Office 2011 for Mac编写的程序语言是什么?
- 30. Azure写入了什么栈/编程语言?
下载源并找出:http://referencesource.microsoft.com/netframework.aspx – 2010-11-18 21:52:08
@michielvoo你的链接死了,更新将不胜感激。 – Aelphaeis 2014-06-18 15:13:22
@Aelphaeis它现在只是http://referencesource.microsoft.com – 2014-06-18 18:44:22