链接:
.NET Framework Conceptual Overview : http://msdn.microsoft.com/en-us/library/zw4w595w.aspx
Common Language Runtime (CLR):http://msdn.microsoft.com/en-us/library/8bs2ecf4.aspx
.NET Framework 是一个集成在 Windows 中的组件,它支持生成和运行下一代应用程序与 XML Web Services。
- .NET Framework 的另一个主要组件是类库,它是一个综合性的面向对象的可重用类型集合,您可以使用它开发多种应用程序,这些应用程序包括传统的命令行或图形用户界面 (GUI) 应用程序,也包括基于 ASP.NET 所提供的最新创新的应用程序(如 Web 窗体和 XML Web Services)。
- ASP.NET 直接使用运行时以启用 ASP.NET 应用程序和 XML Web Services
.NET Framework 环境
该插图还显示托管代码如何在更大的结构内运行。
公共语言运行时(CLR)的功能
这些功能是在公共语言运行时上运行的托管代码所固有的
-
安全性,取决于包括托管组件的来源(如 Internet、企业网络或本地计算机)在内的一些因素,托管组件被赋予不同程度的信任
-
这样,运行时的安全性功能就使通过 Internet 部署的合法软件能够具有特别丰富的功能。
-
这意味着托管代码可在严格实施类型保真和类型安全的同时使用其他托管类型和实例。
-
内存泄漏和无效内存引用。
-
以 .NET Framework 为目标的语言编译器使得用该语言编写的现有代码可以使用 .NET Framework 的功能,这大大减轻了现有应用程序的迁移过程的工作负担。
- 托管和非托管代码之间的互操作性使开发人员能够继续使用所需的 COM 组件和 DLL。
- 同时,内存管理器排除了出现零碎内存的可能性,并增大了内存引用区域以进一步提高性能。
- 此基础结构使您在享受支持运行时承载的行业最佳企业服务器的优越性能的同时,能够使用托管代码编写业务逻辑。
公共语言运行时(CLR)细节
- 公共语言运行时使用元数据来完成以下任务:查找和加载类,在内存中安排实例,解析方法调用,生成本机代码,强制安全性,以及设置运行时上下文边界。
- 由于语言编译器会提供自己的类型(如基元类型),因此您可能并不总是知道(或需要知道)这些数据是否是托管的。
- 常规类型系统(CTS),而且它们遵循公共语言运行时关于定义新类型以及创建、使用、保持和绑定到类型的规则。
- 取而代之的是,有关您定义的类型(及其依赖项)的信息作为元数据与代码存储在一起,这样大大降低了组件复制和移除任务的复杂性。
- 例如,如果您是一位 Visual Basic 开发人员,您可能会注意到:有了公共语言运行时,Visual Basic 语言的面向对象的功能比以前多了。
.NET Framework 类库
- 此外,第三方组件可与 .NET Framework 中的类无缝集成。