.NET概述

将应用程序编译及Link成某一平台上的单一的Native执行文件的日子已一去不复返,开发Windows程序已经变为以DLL为基础。.NET的执行模型变为了以虚拟机的方式来执行。

.NET Framework的组成

.NET概述_第1张图片

.Net Framework由两部分组成:公共语言运行时(CLR)、基底类别库(BCL)

公共语言运行时(CLR:Common Language Runtime)

CLR(CommonLanguage Runtime)公共语言运行时是整个.net framework构建的基础,是实现.Net跨平台,跨语言,代码安全等核心特性的关键。

它实际上是驻留在内存里的一段代理代码,负责在.net整个执行期间的代码管理工作,比较典型的有:内存管理,线程管理,远程管理,代码强制安全类型等。这些都可称得上.net framework的生命线。实际上,CLR代理了一部分操作系统的管理功能

类似于Java中的JVM(Java虚拟机),为.net提供了跨语言编程的平台


基底类别库(BCL:Base Class Library)

.Netl构架类库是基于运行时面向对象的特性而建造的,和CLR紧密集成的一族可重用类(Class)的集合。它大大简化了软件开发的难度,而且很容易与第三方组件无缝集成.

.Net架构类库主要包括对一下编程模型的支持:

1.控制台应用程序

2.脚本与宿主应用程序

3.Windows Form应用程序

4.asp.net应用程序

5.WebService应用程序.


.NET概述_第2张图片

l 提供各种解决方案时所需使用的物件

l 所有的.net语言皆使用同一组(开发小组可以选择不同的编程语言共同开发)

l 将各种不同解决方案的模型一致化

.NET工作原理

所有.NET程序语言编译器的目标格式都为微软中介语言格式(IL:IntermediateLanguage),而非二进制码文件。

IL指执行时通过即时(JustIn Time)编译器转化为本地代码的,与CPU独立的一族指令集合。它在.Net平台中是实现语言互操作的一个核心环节,所有.Net平台的语言都要先被编译成中间语言(IL)。

.NET概述_第3张图片

.NET概述_第4张图片

Net 语言互操作性


NET语言互操作性是指遵循CLR规范的语言在对象继承方面的支持,即用一种语言在.Net平台下开发的类可在另一语言中重用,这通过一种称作微软中间语言MIL来实现,即语言编译器首先将该语言编译成微软中间语言,再在相应平台下编译出本地代码。这一切都是在CLR的规范下进行的。

.NET组件(Assembly)机制


组件是可互换的软件部分,.NET平台创建了组件,并将组件作为其基本的元素。从本质上看,.NET平台组件是一个用任何.NET语言以插件形式开发的可互换的软件部件,它可以与其他应用程序实现互操作。

.NET本身的CLR和BCL都有组件构成

.NET概述_第5张图片

应用程序是由一个或多个元件(DLL)(.net的元件称作组件)组成,例:

.NET概述_第6张图片

你可能感兴趣的:(.NET概述)