.NET几大热点问题(转)

来源:互联网 发布:sql注入攻防入门详解 编辑:程序博客网 时间:2024/05/29 11:41
<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 728x15, 创建于 08-4-23MSDN */google_ad_slot = "3624277373";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 160x600, 创建于 08-4-23MSDN */google_ad_slot = "4367022601";google_ad_width = 160;google_ad_height = 600;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
一.什么是.NET?它主要包括什么?

.NET是为简化在第三代因特网的高分布式环境下的应用程序开发,基于开放互联网标准和协议之上,实现异质语言和平台高度交互性,而构建的新一代计算和通信平台。

.NET主要包括普通语言运行时(Common Language Runtime)和.NET构架类库。

二..NET主要的优点有哪些?

.NET的主要优点有跨语言,跨平台,安全,以及对开放互联网标准和协议的支持。

.NET支持多种语言的互操作,即在一种语言下开发的组件,可在另一组件下通过面向对象的继承而得以重用,目前.NET支持的语言达二十多种。

.NET通过将各语言先编译成中间语言(IL),然后再执行时用即时(Just In Time)编译器将之编译成本地平台代码来实现异构平台下对象的互操作,目前.NET支持的平台有Windows,Linux和Unix的支持正在开发中。

.NET通过普通语言运行时(Common Language Runtime)来实现资源对象,类型的安全。

.NET通过对HTTP,XML,SOAP,WSDL等InterNET标准的强劲支持提供在异构网络环境下获取远程服务,连接远程设备,交互远程应用的编程界面.

三..NET中的普通语言运行时(Common Language Runtime)指什么?它在.NET中处什么位置?

CLR(Common Language Runtime)普通语言运行时是整个.NET framework构建的基础,是实现.NET跨平台,跨语言,代码安全等核心特性的关键。它实际上是驻留在内存里的一段代理代码,负责在整个.NET整个执行期间的代码管理工作,比较典型的有:内存管理,线程管理,远程管理,代码强制安全类型等。这些都可称得上.NET framework的生命线。实际上,普通语言运行时代理了一部分操作系统的管理功能。

四..NET构架类库是什么?包括哪些内容?

.NETl构架类库是基于运行时面向对象的特性而建造的,和普通语言运行时紧密集成的一族可重用类(Class)的集合。它大大简化了软件开发的难度,而且很容易与第三方组件无缝集成。

.NET架构类库主要包括对一下编程模型的支持:

1. 控制台应用程序。

2. 脚本和宿主应用程序。

3. Windows Forms应用程序(Windows 桌面GUI应用程序)。

4. ASP.NET应用程序。

5. Web Services应用程序。

6. Windows 服务程序

五..NET支持的开发语言有哪些?.NET语言的互操作性是指什么?  

.NET声称支持市面上20多种语言,但目前只有微软官方发布的C#,Visual Basic.NET,Managed C++,和Jsript,其他厂商声称正在开发中的支持工具有COBOL,Eiffel,Perl,Smalltalk,Python。

.NET语言的互操作性是指遵循普通语言运行时(Common Language Runtime)规范的语言在对象继承方面的支持,即用一种语言在.NET平台下开发的类可在另一语言中重用,这通过一种称作微软中间语言MIL来实现,即语言编译器首先将该语言编译成微软中间语言,再在相应平台下编译出本地代码。这一切都是在普通语言运行时的规范下进行。

六..NET支持的平台有哪些?它的跨平台实现得如何?

目前支持.NET的平台有Windows 2000, NT4 SP6a, Windows Me和Windows 98。其声称支持的平台有Unix,Linux等,目前有三个项目正在开发Linux下的.NET平台:Ximian公司的Mono项目,DotGNU以及 Potable .NET.

七..NET与COM的关系是什么?.NET是否意味着COM的终结?

COM定义了组件对象间通信的二进制标准,.NET通过组件内置的类型系统提供了类似的机制,它为此提供了另一个途经。.NET并不意味着COM的终结,但必将大大减少开发人员对COM的依赖。.NET 支持COM和.NET组件之间的互操作性,实际上可通过Runtime Callable Wrapper(RCW)来实现在.NET中获取COM组件,通过COM Callable Wrapper(CCW)来实现在COM中获取.NET组件。

八..NET中的中间语言(IL)是什么?它在.NET平台中起什么作用?开发人员可以用中间语言(IL)编程吗?

.NET中的中间语言是指可以在普通语言运行时规范下,.执行时通过即时(Just In Time)编译器转化为本地代码的,与CPU独立的一族指令集合。它在.NET平台中是实现语言互操作的一个核心环节,所有.NET平台的语言都要先被编译成中间语言(IL)。程序员也可以直接利用中间语言(IL)来编程,但不推荐那样做,中间语言对理解.NET对象某些行为和程序的调试很有帮助

九..NET中的自动垃圾收集是什么?它给.NET平台下的编程带来什么变化?

.NET垃圾收集器负责整个.NET运行时受管代码的内存分配与释放任务。它通过一定的优化算法来选择收集的对象和时间。程序员只有在释放大量受管资源时可以进行立即强制垃圾收集,在释放非受管资源时采用终止化(Finalize)操作来处理,需要在程序运行中释放的应该实现Dispose()方法,并明确调用。其它时间将资源的回收交由.NET垃圾收集起来做。

十..NET的受管(Managed)代码与非受管(Unmanaged)代码指什么?他们的编码有什么区别?

.NET的受管代码(Managed Code)是指符合普通语言运行时(Common Language Runtime)规范,在内存中受运行时代码代理进行内存管理,线程管理,远程管理,代码强制安全类型的代码。非受管代码指对内存,文件,数据库等非受管资源进行操作的代码,他们通常不受运行时代码代理管理,是不安全的。对受管代码的编程只需专注于编程的逻辑,对于内存等资源的管理交由普通语言运行时(Common Language Runtime)来负责,而对非受管代码的编程,则要开发人员精心负责各种非受管资源的分配和回收工作。

十一. .NET平台上的开发工具有哪些?目前发展到什么阶段?

.NET平台上的开发工具目前只有微软官方的Visual Studio.NET,其它Delphi.NET 及Linux下的开发工具正在开发中。Visual Studio.NET目前处于最后的Beta2测试状态,它将在2001年下半年随着Visual Studio.NET的推出而发展到成熟的企业版。  

目前可下载的Beta2版本地址:

.NET Framework SDK:

http://msdn.microsoft.com/downloads/default.asp?url=/downloads/sample.asp?url=/msdn-files/027/000/976/msdncompositedoc.xml&frame=true

Visual Studio.NET Beta版本(注册用户):

http://msdn.microsoft.com/vstudio/nextgen/beta.asp

十二. .NET的网络资源有哪些?

1 www.dotNETwire.com 第三方的.NET门户网站
2.www.microsoft.com/NET 微软的.NET门户网站
3.msdn.microsft.com/NET 微软的开发人员.NET门户网站
4.www.csharpindex.com c#门户网站
5.www.dexv.com/dotNET 老牌程序员网站的.NET专版
6.www.c-sharpcorner.com c#门户
7.www.asp.NET 微软的asp.NET,webservice的门户网站
8.www.gotdotNET.com 微软的team组建的.NET网站
9 www.dotNETbooks.com .NET最新图书门户网站
10 discuss.develop.com 人气最旺,技术最强的国外.NET论坛 &

NET几大热点问题(转)';return true">
<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 728x15, 创建于 08-4-23MSDN */google_ad_slot = "3624277373";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 160x600, 创建于 08-4-23MSDN */google_ad_slot = "4367022601";google_ad_width = 160;google_ad_height = 600;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>