.Net Framework基础知识

时间:2024-04-12 15:05:42
.net常识

.net framework是微软为开发应用程序而创建的一个富有革命性的新平台;
.net可以用来开发windows应用程序,web应用程序,web服务和其它各种类型的程序。
.net可以用于多种语言,流行的开发语言为C#.
.net framework应用程序使用面向对象的编程(OPP)的方法编写,通常包含托管代码。托管代码的内存管理由.net运行库处理,其中包括垃圾回收。
.net framework包含了一个非常大的库,其中分类页很多,比如桌面程序库,网页库(非官方,便于理解)
     通用类型系统(common type system/'CTS'):一些常用的基本类型,like:int,string....,也就是基本数据类型和函数
     公共语言运行库(common language runtime /'CLR'):它负责.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;
.Net Framework基础知识
3. 在执行代码时(自动运行或者其他代码引用它的时候),首先必须使用JIT编译器将代码编译为兼容本机的代码,如图1-3
.Net Framework基础知识
4. 在托管的CLR环境下运行本机代码,以及其他应用程序或进程,如图1-4
.Net Framework基础知识