CLR VB.NET学习经验

VB.NET还是比较常用的,于是我研究了一下CLR VB.NET,在这里拿出来和大家分享一下,希望对大家有用。

创新互联是专业的丽水网站建设公司,丽水接单;提供做网站、网站制作,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行丽水网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!

迄今为止,业界对VB.NET讨论得最多的特色或许就是CLR VB.NET运行在CLR之上,正是CLR VB.NET带来了许多关键的新特色(包括缺点在内)。例如,CLR使得VB.NET支持跨语言的继承以及自由线程。

在VB6 中,分布式VB程序要求有VB运行时库msvbvm60.dll支持,即该运行时库必须随同应用一起分发。其他许多语言,比如C++ 和Java,也有类似的要求。

在.NET中,所有Visual Studio 语言共享同样的运行时环境CLR.改用CLR带来了几个重要的结果:现在所有Visual Studio 语言都共用同样的IDE 、同样的窗体引擎、同样的异常处理机制,等等。它意味着VBc在很大程度上已经可以和.NET的其他语言相提并论,如C#等。然而,对于CLR 的异议仍旧存在,VB业界仍在激励地争辩它地价值。

不管应用是用VB、C#还是其他.NET语言编写,所有VS.NET代码都是编译成中间语言(Intermediate Language ,IL)。当应用运行时,一个实时编译器(just-in-time compiler ,或称为JIT )就把IL代码编译成机器语言。在理论上,它意味着为非Windows 的平台构造.NET运行环境是可能的,但目前还没有出现有关这类系统的正式消息。IL有一个缺点:正如VB在5.0 以前的版本,IL代码对于类似的反向编译工程很敏感。由于存在这种可能性,许多开发者对于.NET框架的整体安全性抱有怀疑。

对CLR 进行优化影响IL层次上的代码,它使得所有使用CLR 的语言受益。然而,对于特定语言的优化涉及到如何把代码编译成IL代码,它根据特定语言的语法进行。因此,.NET各种语言之间存在一定的性能差异是必然的。但不管如何,从整体上来看这仍旧是好事,例如CLR 为VB带来了和C#一样的调试和分析工具——之所以能够如此,是因为它们都使用一样的工具。

CLR 提供了前所未有的跨语言集成能力,其中包括跨语言继承代码的能力。

所有使用CLR 的语言都使用一个公共类型系统(Common Type System),它使得开发那些运用多种语言的应用变得更为容易。

在CLR 之内运行的代码称为“受管理的代码”(Managed Code),受管理代码所使用的内存由CLR 全面控制。受管理的代码有着许多优点,包括交叉语言集成、跨语言异常控制以及一个组件交互的简化模型。VB.NET只能以受管理代码方式运行,与此相对应,C#却具有将代码转入非受管理方式运行的能力(运行在CLR 之外),比如执行指针处理之类的操作。这是VB.NET不能与C#相提并论的地方之一。然而,这种能力的是否重要,对于不同的人、不同的用途来说都有所不同。

由CLR 导致的体系上的不同不仅仅是跨语言继承、共享功能和受管理代码,它还有更深刻的意义。VB.NET 的底层体系不再是COM ;另外,VB.NET中所有东西都是对象,甚至连字符串也一样。由于这些原因以及其他许多原因,Microsoft 改变了底层体系管理对象的方法。COM 系统通过引用计数方式管理对象,每当对象被引用时,引用计数就增加。当对象引用超出作用范围或者被释放时,计数器的值就减少;一旦引用计数为0 ,对象就被释放。Microsoft 声称。

NET 体系中的引用计数开销实在太大,使得.NET采用引用计数不再合适,因此它就放弃了引用计数,改用垃圾回收(Garbage Collection)。以上介绍CLR VB.NET。

【编辑推荐】

  1. 简单分析VB.NET Dock属性
  2. 浅析VB.NET面向对象编程的优点
  3. VB.NET名字空间学习笔记
  4. 详解VB.NET实现Web Service
  5. 简单讲解VB.NET静态成员

网站标题:CLR VB.NET学习经验
URL标题:http://www.shufengxianlan.com/qtweb/news38/270438.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联