Net_Framework_框架工作原理.doc
《Net_Framework_框架工作原理.doc》由会员分享,可在线阅读,更多相关《Net_Framework_框架工作原理.doc(9页珍藏版)》请在咨信网上搜索。
1、.Net Framework 框架工作原理从.Net Framework 1.0到现在的.Net Framework 4.0,版本在不断升级,那么,这些版本升级了什么东西?在哪些方面进行了增加或者增强?它们之间有什么相同之处和不同之处呢?.Net Framework从出现到现在的.Net Framework 4.0,其框架结构没什么大的变化,都是CLR在OS上面,基类库在CLR上面,再之上是ADO.NET,XML等,再之上是 ,window form,最上层就是我们经常用到的各种.Net开发工具了框架图如下: Microsoft .NET Framework由应用程序开发技术、Microsof
2、t .NET Framework 类库、基类库和公共语言运行库(CLR)4个部分组成。这4个部分如图所示,每个较高的层都使用一个或多个较低的层。1应用程序开发技术应用程序开发技术位于框架的最上方,是应用程序开发人员开发的主要对象。它包括ASP .NET技术和WinFroms技术等高级编程技术。2Microsoft .NET Framework 类库Microsoft .NET Framework 类库是一个综合性的类型集合,用于应用程序开发的一些支持性的通用功能。开发人员可以使用它开发多种模式的应用程序,可以是命令行形式,也可以图形界面形式的应用。Microsoft .NET Framewor
3、k 中主要包括以下类库:数据库访问(ADO .NET等)、XML支持、目录服务(LDAP等)、正则表达式和消息支持。3基类库基类库提供了支持底层操作的一系列通用功能。Microsoft .NET 框架主要覆盖了集合操作、线程支持、代码生成、输入输出(IO)、映射和安全等领域的内容。4公共语言运行库(CRL)公共语言运行库是Microsoft .NET Framework 的基础内容,也是Microsoft .NET程序的运行环境,用于执行和管理任何一种针对Microsoft .NET平台的所有代码。CLR可以为应用程序提供很多核心服务,如内存管理、线程管理和远程处理等,并且还强制实施代码的安全
4、性和可靠性管理。下面简要介绍Microsoft .NET 框架的一些核心技术特点,以便读者能够更深入地了解 C# 程序后台运行的原理。(1) 多语言支持。在Microsoft .NET 平台上,所有的语言都是等价的,它们都是基于公共语言运行库(CLR)的运行环境进行编译运行。所有Microsoft .NET 支持的语言,不管是Visual Basic .NET 、Visual C+、C# 还是Jscript .NET,都是平等的。用这种语言编写的代码都被编译成一种中间代码,在公共语言运行库中运行。在技术上这种语言与其他语言相比没有很大的区别,用户可以根据自己熟悉的编程语言进行操作。在本书中使用
5、 C# 进行编程,因为C# 是一种优秀的程序开发语言,它简洁、高效且便于使用。主要用于Microsoft .NET框架中面向组件的领域。(2) 多平台支持。Microsoft .NET框架的另一个重要特点就是多平台支持。不过相对于 Java 技术能够跨越 UNIX、Linux 和Windows 等众多平台,目前Microsoft .NET 的跨平台性仅限于各种 Windows 操作系统,如Windows 95/98、Windows NT、Windows 2000 和 Windows XP 等。(3) 性能。Microsoft .NET的基本设计目标之一就是具有强大的性能和可伸缩性。对于 Mic
6、rosoft .NET 来说,要具备很好的性能要靠公共语言运行库来执行中间代码。为了确保最佳性能,在某种意义上公共语言运行库将所有引用程序代码都编译成本机代码。这种转换既可以在应用程序运行时完成,也可以在应用程序首次安装时完成。有了公共语言运行库,就可以很容易地设计出对象能够跨语言交互的组件和应用程序。也就是说,用不同语言编写的对象可以互相通信,并且它们的行为可以紧密集成。例如,可以定义一个类,然后使用不同的语言从原始类派生出另一个类或调用原始类的方法。还可以将一个类的实例传递到用不同的语言编写的另一个类的方法。这种跨语言集成之所以成为可能,是因为基于公共语言运行库的语言编译器和工具使用由公共
7、语言运行库定义的通用类型系统,而且它们遵循公共语言运行库关于定义新类型以及创建、使用、保持和绑定到类型的规则。图1.32列出了各种程序与CLR之间的关系。公共语言运行库具有以下一些优点。改进了性能。能够轻松使用其他语言开发的组件。类库提供的可扩展类型。公共语言运行库的执行模型包括以下几种。将源代码(VB、CS)编译成托管代码块。托管代码块由中间语言和元数据组成。将托管代码合并成程序集。加载公共语言运行库我们平时用csc.exe 编译器编译后的程序都是MSIL形式的,包括window form和中的.exe和.dll软件或者组件这些软件和组件在CLR环境下由CLR环境的JIT编译器编译成本地代码
8、,之后本地代码在CLR托管环境下运行CLR负责内存管理,垃圾回收等工作,同时负责与OS通信,包括OS上的其他非托管软件何为托管代码和非托管代码?托管代码是在.NET基础上开发出来的代码,这些代码经编译成MSIL后,在CLR的JIT即时编译后在CLR托管下运行,故这些代码称为托管代码而没在.NET的基础上开发出来的代码,如C/C+/vb开发出来的COM组件或者API,它们一旦编译后就编译成基于OS的本地代码,它们直接与OS通信,中间没有经过CLR这个中间者,而且内存等管理是手动管理的,此类代码称之为非托管代码前面讲的是.Net Framework各版本之间相同之处,即主要框架结构模型是相同的,那
9、么,他们之间的最主要的区别是什么呢?先看看.Net Framework3.0的框架图:可以看到,3.0还是用的2.0的基类库和CLR,只不过在2.0的原有 2.0,window forms2.0技术的基础上增加了WCF,WPF,WWF等新技术,其底层还是和2.0一样,故如果3.0开发编译后的东西没有用到新的基类库的话,一样可以在2.0上运行这里需要再说明下CLR的JIT是如何加载编译程序集的JIT并非所有using引用的程序集都加载编译的,它只加载编译要用到的程序集,故把一个类作为一个类文件编译成一个组件或者说是程序集,比并把几个类写成一个文件编译成一个程序集,可以减少很多的加载编译量,所以最
10、好一个功能,一个类单独写成一个程序集.Net 3.5在3.0的基础上对之前功能的增强外,还新增加了几个新技术.NET 3.5并未对.NET 2.0现存的技术进行任何改动,包括ASP.NET、ADO.NET和WinForm在内的主要技术都保持原样,这对熟练掌握.NET 2.0的技术人员是个好消息,他们所掌握的技术仍然很有价值。根据微软.NET平台发展趋势来看,.NET 2.0平台将为.NET 3.5提供基础类库,.NET 3.5将着重引入语法,数据访问和Web客户端上的一些创新。可以把.NET 3.5看做是.NET 2.0的超集,是对.NET 2.0的一次补充。如果开发者是从.NET 1.0或1
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Net_Framework_ 框架 工作 原理
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【xiaol****an189】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【xiaol****an189】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。