剖析从VB转型到VB.NET的必要性

开发 后端
这里介绍VB转型到VB.NET的必要性,VB.NET是一种编译性的语言,但这种编译和以前接触的编译有所区别。因为经过VB.NET编译器编译后得到文件并不是可以在计算机直接运行的二进制文件。

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

从VB转型到VB.NET的必要性:

虽然VB得到了很多人的认可,也有许多配套产品都提供了VB的接口。但随之时间的延续,其缺点也逐渐暴露了,有些甚至是无法"容忍"的。首先作为一种解释性的语言,不仅程序执行速度慢,并且在分发应用程序时,还需要带上解释库;其次VB并非完全的面向对象的开发语言,从根本上说,它应该是一种面向过程的开发语言。

而VB.NET做为下一代的VB语言,它是一种为开发.Net平台应用程序而度身定做的程序语言。因为VB.NET中完全集成了.Net FrameWork(.Net框架)和CLR(Common Language Runtime,即:公共语言运行时)。同时.Net 框架和公共语言运行时又共同提供VB.NET语言互操作性、垃圾资源回收、可靠安全性和版本改进的支持。通过VB.NET能够简便、快捷地创建.Net平台应用程序、XML Web services 和 ASP.NET Web 应用程序。VB.NET做为开发.Net平台的程序语言,那它就为开发现跨平台程序创造了可能。因为我们知道,微软推出.Net,其目的之一就是实现跨平台。虽然目前微软只提供了在Windows平台上运行的.Net框架,还无法实现真正意义上的跨平台,但随着MONO的出现(虽然它还存在很多问题,并且目前的MONO只为C#提供支持),但可以预见的是在不久的将来,VB.NET实现Write Once And Run AnyWhere的时间不会太久。

VB.NET是一种编译性的语言,但这种编译和以前接触的编译有所区别。因为经过VB.NET编译器编译后得到文件并不是可以在计算机直接运行的二进制文件。它的性质是一种IL文件(中间语言文件)。在运行IL文件时,首先是通过CLR下的JIT(即时编译器),把这种IL文件再编译成二进制文件。我们看到的程序运行,其实是经过JIT编译后的二进制文件在执行。这时可能有很多朋友会问,这种二次编译是否多此一举,具体实现中是否很麻烦,是否会影响程序的运行速度?二次编译的确是影响了程序运行的速度,但它却为实现跨平台带来了可能。其实这种编译过程犹如Java中的JVM(Java虚拟机)。正是JVM才使得Java能够开发出跨平台的应用程序。二次编译是CLR在.Net框架下自动实现IL文件到二进制文件转变的,它是一种自动完成的,并不需要人员的参与,所以它并不会给程序执行带来麻烦。

VB.NET 还是一种真正的面向对象的开发语言,可以说OOP思想已经深入到语言中的任一角落,如:在VB.NET中创建的Windows组件,就是从类中继承,类经过实例化得到的。VB.NET还增加了许多新功能和改进功能,如继承、接口和重载等,这些都使VB.NET成为功能强大的面向对象的编程语言。

微软公司在推出VB.NET的同时,还推出了VB.NET的开发工具Visual Studio .Net。Java程序员羡慕VB.NET程序员的重要原因之一就是,VB.NET拥有一个任何比目前Java程序员所使用的开发环境都好的集成开发环境--VB.NET,以上介绍VB转型到VB.NET的必要性。

【编辑推荐】

  1. 详细分析VB Update方法
  2. 详细讲解VB开发IIS应用程序
  3. VB ConsoleProgressBar简单介绍
  4. 描述VB ConsoleProgressBar类
  5. 概述VB 2005新型控制台
责任编辑:佚名 来源: Blog
相关推荐

2009-10-23 13:14:38

2009-10-21 16:00:26

VB.NET CASE

2009-11-02 16:22:16

VB.NET面向对象

2009-10-13 15:09:19

VB.NET使用Tre

2009-10-28 10:15:48

VB.NET框架类库

2009-10-12 16:51:28

VB.NET使用Ora

2010-01-14 14:21:07

2010-01-22 15:37:02

VB.NET监控类

2009-10-22 10:10:20

VB.NET Proc

2009-10-29 11:41:27

VB.NET写Obje

2010-01-21 12:55:08

VB.NET对象序列

2010-01-12 11:47:09

VB.NET可选参数

2009-10-15 17:50:48

VB.NET调用API

2009-10-29 14:02:24

VB和VB.NET比较

2009-11-02 16:41:55

VB.NET串行化对象

2010-01-19 15:42:30

VB.NET赋值语句

2009-10-28 11:27:34

VB.NET资源文件

2009-10-20 08:39:57

VB.NET输出函数

2010-01-20 18:45:44

VB.NET DoEv

2010-01-07 17:41:19

VB.NET验证LDA
点赞
收藏

51CTO技术栈公众号