虫虫技术在线--技术决定出路

当前位置: 首页 > 编程 > .net >

.NET 体系结构杂谈

时间:2010-04-07 23:41来源:虫虫技术在线收集整理 作者:虫虫编辑 点击:
我们不能独立的使用C#语言,而必须和.net framework 一起考虑。C#编译器专门用于.net 这表示用C#编写的所有代码总在.net Framework 中运行。对于C#语言来说,可以得出两个重要的结论: 1.C#的

我们不能独立的使用C#语言,而必须和.net framework 一起考虑。C#编译器专门用于.net 这表示用C#编写的所有代码总在.net Framework 中运行。对于C#语言来说,可以得出两个重要的结论:

1.C#的结构和方法论反应了.net的基础方法论

2.在许多的情况下,C#的特定语言功能取决于.net的功能,或者依赖于.net的基类

Microsoft 中间语言(Microsoft INtermediate Langiage) 简称 MSIL 或者 IL

通用类型系统(Common Type System)简称 CTS

公共语言规范(Common Language Specification)CLS

C#与.NET的关系

C#是专门与Microsoft的.net framework 一起使用而设计的。

C#是一种基于现代面向对象设计方法的语言。

C#就其本身而言只是一种语言,尽管它是用于生成面向.net环境的代码,但它本身不是.net的一部分。

.NET 支持的一些特性,C#不支持。而C#支持的另一些特性,而.net不支持(如运算符重载)

公共语言运行库

.net Framework 的核心是其运行库的执行环境,称为公共语言运行库(CLR)或.net 运行库。

通常将在CLR的控制下运行的代码称为托管代码(managed code)

在.net中编译分为两部分:

1.把源代码编译为Microsoft 中间语言(IL)

2.CLR把IL编译为平台专用代码

托管代码的优点:

他们是一种低级语言,语法很简单(使用数字代码,而不是文本代码),可以非常快速的转换为内部机器码。

1.平台无关性(编译为中间语言就可以获得。NET平台无关性)

2.提高性能()

3.语言的互操作性(将任何一种语言编译为中间代码)

中间语言

中间语言特征:

1.面向对象和使用接口

2.值类型和引用类型之间的巨大差别

3.强数据类型

4.使用异常来处理错误

5.使用特性

强数据类型

中间语言的一个重要方面是它基于强数据类型。

我们从.net提供的,依赖于类型安全的服务站获得的好处更多,这些服务包括

1.语言的互操作性

2.垃圾收集

3.安全性

4.应用程序域

IL(中间语言)是区分大小写的

垃圾收集:处理目前代码中所有变量,检查对存储在托管堆上的对象的引用,确定哪些对象可以从代码中访问——即哪些对象有引用,没有引用的对象就不能再从代码中访问,因而被删除。

垃圾收集器的一个重要方面是他是不确定。换言之,不能保证什么时候会调用垃圾收集器:.net运行库决定需要它时,就可以调用它(除非明确调用垃圾收集器)。但可以重写自己俄格过程,在代码中调用垃圾收集器。

(责任编辑:admin)
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
栏目列表
推荐内容