1.1 .NET框架
.NET是微软公司于2000 年推出的面向互联网时代构筑的新一代平台,.NET框架(.NET Framework)简化了在高度分布式环境中开发应用程序的工作。一整套基于.NET框架设计的工具组件,被集成到Visual Studio.NET(简称VS.NET)开发环境中,包括Visual Basic.NET、Visual C++.NET、Visual C#.NET、Visual J#.NET、ASP.NET等多种开发工具。Visual C++.NET(简称VC.NET)是在C++基础上产生的,它的基本语法与C++相同,并具有很多新的特性,增强了C++的性能,使用起来也更加方便。
VS.NET是一套完整的开发工具,各种语言都使用相同的集成开发环境(IDE),开发人员可以轻松地创建用混合语言设计的解决方案。
.NET框架有两个主要的组件:公共语言运行库(CLR,Common Language Runtime)和.NET框架类库(FCL,Framework Class Library)。公共语言运行库在执行时管理代码,提供核心服务(如内存管理、线程管理和远程处理),强制实施严格的类型安全以及可确保安全性和健壮性的其他形式的代码准确性。类库是综合性的、面向对象的、可重用类型的集合,可用来开发应用程序。
(1)公共语言运行库
CLR是一个公共语言运行库。在.NET中,编译生成不是最终的机器码,而是一种中间语言(MSIL,Microsoft Interlanguage)代码。运行时由CLR的实时编译器(JIT,Just In Time)“翻译”成特定的机器代码,然后执行。
CLR支持多种语言,实现各种语言互操作。因此,CLR提供了公共类型系统(CTS,Common Type System),对数据类型提供定义、管理和使用的严格说明;提供了代码必须遵守公共语言规范(CLS,Common Language Standard),它包括许多应用程序所需要的基本语言功能。
通过CLR运行的代码称为托管(Managed)代码。在CLR控制之外的代码称为非托管(UnManaged)代码,通常称为本地代码。
通常所说的C++,是ISO/ANSI标准的,为执行普通的应用程序——非托管的C++而设计。而C++/CLI标准是专门为编写CLR托管程序而设计的,它是对C++的一种扩展。CLI的意思是通用语言结构(Common Language Infrastructure)。
所有VB.NET和C#.NET代码都是托管代码。但VC.NET提供了两种代码的互操作,允许程序员在项目中的不同程序模块之间,甚至同一个文件中,混合使用托管(C++/CLI)代码和本地(C++)代码,而不同语言编写的组件也可以进行交互。这体现了VC.NET的强大。
(2).NET框架类库
.NET框架类库FCL是一个与公共语言运行库紧密集成、可重用的类的集合。该类库包括类、接口、结构和枚举,它们可以加速和优化开发过程并提供对系统功能的访问。.NET框架类库使用CTS数据和CLS规范,是生成.NET应用程序、组件、控件的基础。.NET框架类库包含了将近100个命名空间。本书对涉及的命名空间会做简单说明。