《穿越三国之尘缘》:.net Framework架构的概况

来源:百度文库 编辑:偶看新闻 时间:2024/04/20 11:36:56

从.Net Framework 1.0到现在的.Net Framework 4.0,版本在不断升级,那么,这些版本升级了什么东西?在哪些方面进行了增加或者增强?它们之间有什么相同之处和不同之处呢?

  .Net Framework从出现到现在的.Net Framework 4.0,其框架结构没什么大的变化,都是CLR在OS上面,基类库在CLR上面,再之上是ADO.NET,XML等,再之上是asp.net ,window form,最上层就是我们经常用到的各种.Net开发工具了.框架图如下:

 

Microsoft .NET Framework由应用程序开发技术、Microsoft .NET Framework 类库、基类库和公共语言运行库(CLR)4个部分组成。这4个部分如图所示,每个较高的层都使用一个或多个较低的层。

1.应用程序开发技术

应用程序开发技术位于框架的最上方,是应用程序开发人员开发的主要对象。它包括ASP .NET技术和WinFroms技术等高级编程技术。

2.Microsoft .NET Framework 类库

Microsoft .NET Framework 类库是一个综合性的类型集合,用于应用程序开发的一些支持性的通用功能。开发人员可以使用它开发多种模式的应用程序,可以是命令行形式,也可以图形界面形式的应用。Microsoft .NET Framework 中主要包括以下类库:数据库访问(ADO .NET等)、XML支持、目录服务(LDAP等)、正则表达式和消息支持。

3.基类库

基类库提供了支持底层操作的一系列通用功能。Microsoft .NET 框架主要覆盖了集合操作、线程支持、代码生成、输入输出(IO)、映射和安全等领域的内容。

4.公共语言运行库(CRL)

公共语言运行库是Microsoft .NET Framework 的基础内容,也是Microsoft .NET程序的运行环境,用于执行和管理任何一种针对Microsoft .NET平台的所有代码。CLR可以为应用程序提供很多核心服务,如内存管理、线程管理和远程处理等,并且还强制实施代码的安全性和可靠性管理。

下面简要介绍Microsoft .NET 框架的一些核心技术特点,以便读者能够更深入地了解 C# 程序后台运行的原理。

(1) 多语言支持。在Microsoft .NET 平台上,所有的语言都是等价的,它们都是基于公共语言运行库(CLR)的运行环境进行编译运行。所有Microsoft .NET 支持的语言,不管是Visual Basic .NET 、Visual C++、C# 还是Jscript .NET,都是平等的。用这种语言编写的代码都被编译成一种中间代码,在公共语言运行库中运行。在技术上这种语言与其他语言相比没有很大的区别,用户可以根据自己熟悉的编程语言进行操作。在本书中使用 C# 进行编程,因为C# 是一种优秀的程序开发语言,它简洁、高效且便于使用。主要用于Microsoft .NET框架中面向组件的领域。

(2) 多平台支持。Microsoft .NET框架的另一个重要特点就是多平台支持。不过相对于 Java 技术能够跨越 UNIX、Linux 和Windows 等众多平台,目前Microsoft .NET 的跨平台性仅限于各种 Windows 操作系统,如Windows 95/98、Windows NT、Windows 2000 和 Windows XP 等。

(3) 性能。Microsoft .NET的基本设计目标之一就是具有强大的性能和可伸缩性。对于 Microsoft .NET 来说,要具备很好的性能要靠公共语言运行库来执行中间代码。为了确保最佳性能,在某种意义上公共语言运行库将所有引用程序代码都编译成本机代码。这种转换既可以在应用程序运行时完成,也可以在应用程序首次安装时完成。

  

有了公共语言运行库,就可以很容易地设计出对象能够跨语言交互的组件和应用程序。也就是说,用不同语言编写的对象可以互相通信,并且它们的行为可以紧密集成。例如,可以定义一个类,然后使用不同的语言从原始类派生出另一个类或调用原始类的方法。还可以将一个类的实例传递到用不同的语言编写的另一个类的方法。这种跨语言集成之所以成为可能,是因为基于公共语言运行库的语言编译器和工具使用由公共语言运行库定义的通用类型系统,而且它们遵循公共语言运行库关于定义新类型以及创建、使用、保持和绑定到类型的规则。图1.32列出了各种程序与CLR之间的关系。

公共语言运行库具有以下一些优点。

改进了性能。

能够轻松使用其他语言开发的组件。