什么是 .NET 框架?
Microsoft .NET 框架是生成、部署和运行 Web 服务及应用程序的平台。它提供了一个生产率高且基于标准的多语言环境,用于将现有投资与下一代应用程序和服务集成,同时提供了解决 Internet 规模应用程序的部署和操作难题的灵活性。。NET 框架由三个主要部分组成:公共语言运行库、统一类库的分层集合和称为 ASP.NET 的 Active Server Pages 组件化版本。
运行库技术问题
术语
什么是公共语言运行库 (CLR)?
公共语言运行库是用于 .NET 框架应用程序的执行引擎。
它提供若干服务,包括:
代码管理(加载和执行)
应用程序内存隔离
类型安全验证
IL 到本机代码的转换
对元数据(增强型类型信息)的访问
托管对象内存的管理
代码访问安全性的强制
异常处理,包括语言间异常
托管代码、COM 对象和预先存在的 DLL(非托管代码和数据)间的相互操作
对象布局的自动化
对开发人员服务的支持(分析、调试等等)
什么是通用类型系统 (CTS)?
通用类型系统是一个内置在公共语言运行库中的丰富的类型系统,它支持大多数编程语言中存在的类型和操作。通用类型系统支持广泛的编程语言的完整实现。
什么是公共语言规范 (CLS)?
公共语言规范是一组构造和约束,它充当库编写器和编译器编写器的向导。它使库完全可通过任何支持 CLS 的语言使用,并使那些语言可以相互集成。公共语言规范是通用类型系统的一个子集。对于正在编写将由其他开发人员使用的代码的应用程序开发人员,公共语言规范也非常重要。当开发人员按照 CLS 规则设计可公开访问的 API 时,这些 API 很容易通过面向公共语言运行库的所有其他编程语言使用。
什么是 Microsoft 中间语言 (MSIL)?
MSIL 是与 CPU 无关的指令集,其中编译进了 .NET 框架程序。它包含在对象上加载、存储、初始化和调用方法的指令。
在与元数据及公共类型系统组合后,MSIL 允许真正的语言间集成。
在执行之前,MSIL 将转换成机器码,并且不被解释。
什么是托管代码和托管数据?
托管代码是为面向公共语言运行库的服务编写的代码(请参阅“什么是公共语言运行库?”)。为了面向这些服务,该代码必须向运行库提供最低级别的信息(元数据)。默认情况下,所有 C#、Visual Basic .NET 和 JScript .NET 代码都受托管。默认情况下,Visual Studio .NET C++ 代码不受托管,但编译器可以通过指定命令行开关 (/CLR) 来产生托管代码。
与托管代码密切相关的是托管数据(由公共语言运行库的垃圾回收器分配和释放的数据)。默认情况下,C#、Visual Basic 和 JScript .NET 数据受托管。然而,通过使用特殊的关键字可以将 C# 数据标记为非托管。
| 对此文章发表了评论 |

