网站导航免费论文 原创论文 论文搜索 原创论文 网学软件 学术大家 资料中心 会员中心 问题解答 原创论文 论文素材 设计下载 最新论文 下载排行 论文上传 在线投稿 联系我们
返回网学首页
网学联系
最新论文 推荐专题 热门论文 素材专题
当前位置: 网学 > 编程文档 > C# > 正文
从.NET CLI(第3版)看.NET Framework 2.0
来源:Http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 12/10/14
下载{$ArticleTitle}原创论文样式
格式。

6、附件

从.NET CLI文档包含的整体内容来看,.NET CLI包含下列内容:

1、CLS(.NET CLS)

2、CTS(.NET CTS)

3、VES

VES是通常所说的.NET CLR的核心,这也是.NET CLR本质上是虚拟机的又一证明。

4、元数据

包括.NET扩展PE文件格式。

5、CIL(MSIL)

6、库和Profile

7、调试信息的格式

8、附件

实现.NET CLI定义的公共语言基础结构即可实现.NET Framework的子集。了解.NET CLI可以从底层较为详细地了解.NET CLS、.NET CTS、VES、Metadata、NET扩展PE文件格式、CIL等,这是系统底层程序员了解.NET Framework内核以及开发相关软件所必需的。推荐任何一位.NET系统底层程序员认真阅读.NET CLI文档,.NET CLI文档可在Microsoft公司网站上下载

3 对.NET CLI包含内容意义的分析

.NET CLI提供了一个可执行代码(CIL代码)和代码运行的执行环境(VES)的规范,提供给VES可执行代码的是模块(Module),模块是一个文件格式中包含可执行内容的文件。

.NET CLI的核心是一个统一的类型系统(CTS),所有的.NET编程语言编译器、工具甚至.NET CLI自身都使用CTS,CTS模型定义了一组.NET CLI在定义、使用和管理类型时遵循的规则,CTS确定了实现跨语言集成、类型安全和高性能代码执行的框架,通过描述CTS可以描述.NET CLI的体系结构。

元数据用于描述和引用CTS定义的类型。因为元数据包含在.NET编程语言编译生成的最终的可执行文件——.NET扩展PE文件中,所以所有的.NET可执行文件中,仍然包含源程序中的所有类型的定义(描述),通常所说的.NET编程语言中的类(Class),也是CTS中定义的一种类型——引用类型的一种,这意味着所有类型,包括类,可以在.NET可执行文件运行时动态访问,例如在运行时动态确定使用某种类创建对象,而不是在编译时就确定创建对象的类。

CLS是.NET编程语言设计者和框架(例如类库)设计者之间的协定,CLS指定了CTS的子集和用法约定,编程语言通过实现CLS定义的CTS的最小化部分即可获得最大的访问框架的能力。例如:类库暴露出的接口如果只使用CLS指定的CTS子集中的类型,并遵循CLS协定,那么类库就可以被任何.NET编程语言调用。制定CLS的目的是考虑到跨语言集成,因为各种.NET编程语言虽然有其共性,但也有其特性,例如C#支持运算符重载而VB.NET不支持,同样VB.NET支持后期绑定语法而C#不支持,跨语言调用的类型必须是各种.NET编程语言都能支持的类型,所以要定义各种.NET编程语言都支持的CTS子集和用法约定。任何.NET编程语言都必须遵循.NET CLS,例如VB6对面向对象的支持不完整,但作为.NET编程语言的VB.NET,必需完全支持面向对象,这导致了VB6和VB.NET的不兼容。

VES实现并强制遵守CTS。.NET可执行文件完全由类型(包括类)构成,VES执行.NET可执行文件,实际上是执行类型,本质上是在元数据——类型定义的驱动下执行类型中方法的实现,方法的实现可以是CIL代码,也可以是本机代码,例如Visual C++.NET中的混合程序集同时包含CIL代码和本机代码,这就是托管执行(受控执行,Managed Execution)的本质。VES通过执行类型来实现并强制遵守CTS,因为类型是遵循CTS的,VES只能执行遵循CTS的类型。

虚拟机代码——CIL代码的指令集,近似一种虚拟的RISC体系结构CPU的指令集,CIL指令同样可以用一种虚拟的汇编语言表示,称为IL汇编语言。.NET可执行文件中的类型,其方法只要是用CIL代码实现的,可以反汇编成IL汇编语言的形式。因为CIL代码本质上是一种虚拟机代码,要将CIL代码反编译成.NET编程语言的源程序形式也是很简单的,如同Java可执行文件可以反编译成Java源程序一样。

4 第3版.NET CLI中添加的内容

第2版.NET CLI于2002年发布,对应.NET Framework 1.0,第3版.NET CLI对应.NET Framewo

  • 上一篇资讯: C#事件与委托趣谈
  • 下一篇资讯: C++/CLI中类的本质分析
  • 网学推荐

    免费论文

    原创论文

    浏览:
    设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
    版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
    Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved
    湘ICP备09003080号