经典推荐--.NET几大热点问题(.NET人员必读)
六..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)来负责,而对非受管代码的编程,则要开发人员精心负责各种非受管资源的分配和回收工作。