Difference between VB and VB.NET

Points :-

  • VB.NET is what it got transformed into under the Microsoft .NET framework and VB is an obsolete language.
  • VB6 used ASP to build web applications where as VB.NET uses ASP.NET to build web applications.
  • However, VB.NET,C++.NET and C# all compile into the same .NET code – in a certain sense it is almost like they are the same language.
  • The greatest change in VB.NET and VB6 is of runtime environment. VB6 used the VB-Runtime while running the program but VB.NET uses the .Net Common Language Runtime (.Net CLR).In comparision to VB-Runtime,the CLR is much better designed and implemented.VB-Runtime interprets the code while the CLR uses better code translation through Just in Time compiler.In comparision to VB6,the CLR Garbage Collector is also more efficient one as it may detect cyclic references too.
  • VB6 was interpreter based language while VB.NET is a compiled language and the VB6 was not a type-safe language while VB.NET is a type safe language. There is no no magical type conversions in VB.NET and variant type happen in VB.NET
  • VB6 used ‘On Error Goto’ syntax to handle exceptions at runtime. VB.NET uses the Try..Catch.At runtime,finally syntax is used to handle exceptions .
  • In VB6,a lot of code (like user interface code) was hidden from developer. In VB.NET no code is hidden from developer and you can access and control each part of your application
  • VB.NET has much enhanced object oriented support than VB6.
  • VB6 does not allow developing the multithreaded applications but in VB.NET you can create multi threaded applications.
  • VB6 was only considered good for desktop windows application but in VB.NET you can also develop web applications, distributed applications, create .NET windows and web controls and components, write windows and web services.
  • In VB.NET,to read the meta-data of types,reflections is used and using reflection emit you can also generate code to invoke and define types at runtime.
  • VB.NET uses .NET framework class library along with specialized VB library (System.VisualBasic) as a standard library and so that the standard library for VB.NET is much enhanced and useful compared to VB6 standard library
  • VB.NET is platform independent because of .Net framework and programs written in VB.NET can run on any platform where .Net framework is present. The platform include both software (operating system) and hardware platforms.
  • VB.NET also supports language interoperability with various .NET compliant languages and this means that you can use and enhance the code written in other .NET compliant languages. Similarly the code written in VB.NET can also be used and enhanced by other .NET compliant languages. Although VB6 also provided this functionality through COM but it was limited and difficult to use and manage. VB.Net makes it easier because of the presence of Intermediate Language (IL) and Common Language Specification (CLS) of the .NET architecture.
  • VB6 uses COM (Component Object Model) as component architecture where as VB.NET uses assemblies as its component architecture and the Assemblies architecture has removed a lot of problems with COM including DLL-Hell and versioning problem.
  • Components created in VB6 (COM) need to update and make registry entries. VB.NET does not require any registry entry whic makes the deployment easier
  • VB6 used record-sets and ADODB to implement data access applications where as VB.NET uses ADO.NET and datasets to build data access applications.And also the ADO.NET also supports the disconnected data access.

About the Author

Akash Padhiyar

Visit Website

There are no comments yet, add one below.

Leave a Comment

Your email address will not be published. Required fields are marked *


Time limit is exhausted. Please reload CAPTCHA.