下面收集了关于.NET几大热点问题及简要答案,防止我们回答问题不专业的尴尬。同一时候还将一些.NET资源的相关网址罗列一二。

  一.什么是.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)的集合。它大大简化了软件开发的难度,并且非常easy与第三方组件无缝集成。 

  .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人员必读)的更多相关文章

  1. 开发人员必读openstack网络基础

    云计算中的网络非常复杂,需要对网络的基础理论有一定的认识和了解,转载网上针对openstack中涉及到网络概念的文章 开发人员必读openstack网络基础1:什么是L2.L3 开发人员必读opens ...

  2. Web开发人员必读的12个网站

    The more you actually create, the more you’ll learn.(创造的越多,学习的越多),世界上有无数个开发人员会在网上分享他们的开发经验,我们无法向所有人学 ...

  3. 开发人员必读openstack网络基础2:交换机、路由器、DHCP

    我们在使用openstack的过程中,会遇到创建虚拟机路由器.交换机等,那么1.他们的作用到底是什么?2.DHCP为什么会产生,它的作用是什么? 个人总结:交换机:一般用在同一网段,工作在数据链路层, ...

  4. Cesium官方教程11--建模人员必读

    原文地址:https://cesium.com/blog/2014/12/15/gltf-tips-for-artists/ 这篇文章是Branden Coker, an artist from AG ...

  5. 9本java程序员必读的书(附下载地址)

    本文列出的9本书在Java程序员界都是被认为很棒的书.当一个程序员开始初学Java时,他的第一个问题应该是如何选择一本书来作为指导学习Java.这个问题也就表明,相对于其他的教程和博客,Java书籍还 ...

  6. 9本java程序员必读的书

    来源:http://mp.weixin.qq.com/s?__biz=MjM5NzA1MTcyMA==&mid=202904638&idx=2&sn=21dd20438e32a ...

  7. Java程序员必读的9本书

    本文列出的9本书在Java程序员界都是被认为很棒的书.当一个程序员开始初学Java时,他的第一个问题应该是如何选择一本书来作为指导学习Java.这个问题也就表明,相对于其他的教程和博客,Java书籍还 ...

  8. NET经典书籍必读

    C#与.NET框架,入门 + 进阶 + 精通,外加并发编程实例,10本C#图书,一本都不能少. 1.<Learning hard C#学习笔记> 作者:李志  书号:978-7-115-3 ...

  9. 使用 Promises 编写更优雅的 JavaScript 代码

    你可能已经无意中听说过 Promises,很多人都在讨论它,使用它,但你不知道为什么它们如此特别.难道你不能使用回调么?有什么了特别的?在本文中,我们一起来看看 Promises 是什么以及如何使用它 ...

随机推荐

  1. Java学习-异常2

    1.异常处理的第一种方式是:上抛[throws] 2.异常处理的第二种方式是:try....catch..如果不想让调用程序知道该异常发生了,被调用的程序应该使用try...catch..进行异常捕捉 ...

  2. 【洛谷2982】[Usaco2010 Feb]慢下来Slowdown(dfs序+线段树)

    题目: 洛谷2982 分析: 这道题最重要的是想明白一点:牛\(i\)走到以后只对\(P_i\)的子树产生影响 知道这个以后,就可以想到在线维护每个牧场已经被"影响"了多少次(也就 ...

  3. 【USACO2002 Feb】奶牛自行车队

    [USACO2002 Feb]奶牛自行车队 Time Limit: 1000 ms Memory Limit: 131072 KBytes Description N 头奶牛组队参加自行车赛.车队在比 ...

  4. Web程序安全机制

    ASP.NET提供了一个多层的安全模型,这个模型能够非常容易的保护Web应用程序. 安全策略没有必要非常复杂,但是需要应用安全策略的地方却是非常广泛的.程序员需要保证自己的应用程序不能被骗取,而把私有 ...

  5. Linq学习(五)-多表连接

    本将主要介绍 内连接与 外连接 1.join Linq to sql from a in Blog_Users join b in Blog_UserInfo on a.UserId equals b ...

  6. String字符串的完美度

    题目详情: 我们要给每个字母配一个1-26之间的整数,具体怎么分配由你决定,但不同字母的完美度不同, 而一个字符串的完美度等于它里面所有字母的完美度之和,且不在乎字母大小写,也就是说字母F和f的完美度 ...

  7. Json解析与Gson解析

    本文主要介绍json最原始的解析与google提供的gson工具类解析 ①json解析 /** * 普通的json解析 * @param s * @throws JSONException */ pr ...

  8. ionic中遇到的一些问题和坑

    接触ionic有一段时间了,一路上踩了不少坑.大部分都记录下来了,分享给大家,可以少走很多弯路 1,ng-init不能在body里面初始化,可以在一个段落里面初始化<div ng-init> ...

  9. jQuery——val()、text()、html()

    val():获取标签中的value属性的值.带有参数是赋值(类比js中的value属性) text():获取双闭合标签中的文本值.(不识别标签)(类比innerText) html():获取双闭合标签 ...

  10. SQL基本操作——select into与临时表

    SELECT INTO 语句从一个表中选取数据,然后把数据插入另一个表中,常用于创建表的备份复件或者用于对记录进行存档. --制作 "Persons" 表的备份复件: SELECT ...