C#和.NET关系详解

一 .NET Framework体系

  1. .NET Framework是一种为开发应用程序的平台(没有限制系统和程序类型)
  2. .NET Framework主要包含一个非常大的代码库,可以通过oop来使用这些代码,这个库分为不同的模块(windows引用,web开发)

//注意:其中包含的.NET公共语言运行库(Common Language Runtime,CLR),它负责管理用.net库开发的所有运行程序的执行

 

二 C#和.NET的关系

C#是一种面向对象编程语言,也是用于生成面向.NET环境的代码,但它本身不是.NET的一部分;.NET支持的特性,C#并不支持(例运算符重载).

 

三 公共语言运行库(CLR)

  1. 通常将在CLR的控制下运行的代码称为托管代码(managed code)
  2. 在CLR执行编写号的源代码之前,需要编译他们(在C#或其他语言中).在.NET中编译分为两个部分:
  • 把源代码编译成Microsoft中间语言(IL).
  • CLR把IL编译成平台专用的代码

 

四 提高性能

  1. IL总是给hi即使编译的(称为JIT编译)
  2. JIT编译器不是把整个应用程序一次编译完(这样会有很长的启动时间),而是只编译他调用的那部分代码,代码编译过一次后,得到的内部可执行代码就会储存起来.直到推出该引用程序为止,下次运行这部分代码时,就不需要重新运行了,这个过程比一开始编译整个应用程序的效率高
  3. 语言的互操作性:VB,VC++

 

 

五 中间语言(IL)特点

  • 面向对象和使用接口
  • 值类型和引用类型之间的巨大差别
  • 强数据类型
  • 使用异常来处理错误
  • 使用特性

 

六 程序集(assembly)

定义:

  • 时包含编译好的,面向.NET Framework的代码的逻辑单元
  • 程序集时完全自我描述性的,也是一个逻辑单元而不是物理单元,它可以存储在多个文件中(动态程序集的确会存储在内存中,而不是存储在文件中).如果一个程序集存储在多个文件中,其中就会有一个包含入口的主文件,该文件描述了程序集中的其他文件.

你可能感兴趣的:(.NET,c#,.net)