下载此文档

net体系结构.doc


文档分类:IT计算机 | 页数:约28页 举报非法文档有奖
1/28
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/28 下载此文档
文档列表 文档介绍
word
word
3 / 28
word
1
第 章
.NET体系结构
本章内容:

Microsoft中间语言(Microsoft Intermediate Language,MSIL或简称为IL)的优点
值类型和引用类型
数据类型化
理解错误处理和特性
程序集、.NET基类和名称空间
整本书都将强调,C#语言不能孤立地使用, Framework一起考虑。C#,这表示用C# Framework中运行。对于C#语言来说,可以得出两个重要的结论:
(1)C#。
(2) 在许多情况下,C#,。
由于这种依赖性,在开始编写C#程序前,,这就是本章的目的所在。
C#
C#是一种相当新的编程语言,C#的重要性表现在以下两个方面:
Framework一起使用而设计的(.NET Framework是一个功能非常丰富的平台,可开发、部署和执行分布式应用程序)。
它是一种基于现代面向对象设计方法的语言,在设计它时,Microsoft还吸取了其他所有类似语言的经验,这些语言是近20年来面向对象规如此得到广泛应用后才开发出来的。
有一个很重要的问题要弄明白:C#就其本身而言只是一种语言,,。.NET支持的一些特性,C#并不支持。而C#语言支持的另一些特性,.NET却不支持(如运算符重载)!
但是,因为C#,所以如果要使用C#高效地开发应用程序,理解Framework就非常重要,。
word
word
5 / 28
word
公共语言运行库
.NET Framework的核心是其运行库执行环境,称为公共语言运行库(CLR)。通常将在CLR控制下运行的代码称为托管代码(managed code)。
但是,在CLR执行编写好的源代码(在C#中或其他语言中编写的代码)之前,需要编译它们。,编译分为两个阶段:
(1) 把源代码编译为Microsoft中间语言(IL)。
(2)CLR把IL编译为平台专用的代码。
这个两阶段的编译过程非常重要,因为Microsoft。
Microsoft中间语言与Java字节码共享一种理念:它们都是低级语言,语法很简单(使用数字代码,而不是文本代码),可以非常快速地转换为本地机器码。对于代码,这种精心设计的通用语法有很重要的优点:平台无关性、提高性能和语言的互操作性。
平台无关性
首先,这意味着包含字节码指令的同一文件可以放在任一平台中,运行时编译过程的最后阶段可以很轻松地完成,这样代码就可以运行在特定的平台上。换言之,,这与编译为Java字节码就会得到Java平台无关性是一样的。
,因为在编写本书时,.NET的完整实现只能用于Windows平台,但是人们正在积极准备,使它可以用于其他平台(参见Mono项目,,-mono./)。
提高性能
前面把IL和Java做了比拟,实际上,IL比Java字节码的作用还要大。IL总是即时编译的(称为JIT编译),而Java字节码常常是解释性的。Java的一个缺点是,在运行应用程序时,把Java字节码转换为内部可执行代码的过程会导致性能的损失(但在最近,Java在某些平台上能进展JIT编译)。
JIT编译器并不是把整个应用程序一次编译完(这样会有很长的启动时间),而是只编译它调用的那局部代码(这是其名称由来)。代码编译过一次后,得到的本地可执行程序就存储起来,直到退出该应用程序为止,这样在下次运行这局部代码时,就不需要重新编译了。Microsoft认为这个过程要比一开始就编译整个应用程序代码的效率高得多,因为任何应用程序的大局部代码实际上并不是在每次运行期间都执行。使用JIT编译器,从来都不会编译这种代码。
这解释了为什么托管IL代码几乎和本地机器代码的执行速度一样快,但是并没有说明为什么Microsoft认为这会提高性能。其原因是编译过程的最后一局部是在运行时进展的,JIT编译器确切地知道程序运行在什么类型的处理器上,可以利用该处理器提供的任何特性或特定的机器代码指令来优化最后的可执行代码。
传统

net体系结构 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数28
  • 收藏数0 收藏
  • 顶次数0
  • 上传人511709291
  • 文件大小196 KB
  • 时间2021-12-06