.net
framework是microsoft最新的开发平台,现在最新版本为4.0。
.net可以用来开发windows应用程序,web应用程序,web服务和其它各种类型的程序。
.net可以用于多种语言,流行的开发语言为C#.
.net主要包含了一个非常大的库主要由通用类型系统(common type
system(CTS)负责.net在各种语言中进行交互操作)和一个公共语言运行库(common
language runtime(CLR)负责管理用.net库开发的所用应用程序的执行)。
.net
framework应用程序使用面向对象的编程(OPP)的方法编写,通常包含托管代码。托管代码的内存管理由.net运行库处理,其中包括垃圾回收。
.net应用程序运行过程
1.
CIL编译-程序集
在编译使用.net库的时候,先把代码编译为通用中间语言(common intermediate language
CIL)代码,并存储在程序集中,这个工作由.net来做(VC);
链接:c#代码不一定在一个文件中,可以把带代码放到多个源代码文件中,MVC思想
2.
JIT编译
CIL代码生成后,just-in-time(JIT)会把CIL代码编译为专用于OS和目标机器结构的本机代码,
程序集:
在编译应用程序的时候,所创建的CIL代码存储在一个程序集中,程序集包含可执行的应用程序文件(.exe文件);程序集包括元信息(元数据,数据的信息),可选的资源(声音文件和图片等)。
3.
托管代码:
代码通过CIL,JIT编译后,编译任务还没有结束,还需要管理正在运行的.NET代码,管理内存,处理安全性等。
垃圾回收:
托管代码最重要的一个功能就是垃圾回收。这种.net方法可以确保当程序没有在使用某些内存时,就会完全释放这些内存。
.net应用程序运行图解
1.
使用某种.net兼容语言(如c#)编写应用程序,如图1-1;
2.
把代码编译为CIL,并存储在程序集中,如图1-2;
3.
在执行代码时(自动运行或者其他代码引用它的时候),首先必须使用JIT编译器将代码编译为兼容本机的代码,如图1-3
4. 在托管的CLR环境下运行本机代码,以及其他应用程序或进程,如图1-4
.Net Framework基础知识,古老的榕树,5-wow.com