What are the main differences between VB.NET, VB6 and VBA?

What are the main differences between VB.NET, VB6 and VBA?

Author: Vinicius Brasil, 2016-09-18

1 answers

VB6

VB6 is the sixth and final version of Microsoft's Visual Basic language. Which in turn is a visual evolution (facilitates the creation of screens) of Basic which was the product that gave birth to Microsoft and created an entire industry from the 70s. The first VB was born in 1991, and VB6 was released in 1998. He gradually began to have some form of rudimentary object orientation and failure.

VBA

Visual Basic for Applications is a variation of VB6 that began to be incorporated into Microsoft products and licensed for third parties to use in their applications as a way to extend them and allow the creation of scripts. It has some limitation, but it also has some specific possibilities to facilitate integration with the products that host it.

Both are considered obsolete, unsupported, and today are highly insecure. Although many people still use it, this is a serious mistake, it is not even worth talking about details of obsolete technologies and this is the most important thing that should be known about them. In the case of VBA the recommendation is to use Visual Studio Tools for applications.

VB.NET

O VB.NET it would be the evolution of VB to run on top of .NET. but the language is so different that you can hardly call it evolution. There was an effort to give compatibility to the old VB6 applications, but much does not work the same. Actually I shouldn't even try to use the way old programming.

Over time VB.NET it was getting closer to C# and abandoning the VB style for good. Although it still evolves and supports, Microsoft has not done a good job trying to keep at a good level and has fewer and fewer programmers using the language, preferring C#. There are very few advantages of the language over C# and many disadvantages.

It is possible to integrate any .NET language with other products. Microsoft today adopts it as the main tool to extend the flexibility of your applications.

VB.NET it is truly oriented a a object, has a runtime (the CLR ) much better, much faster, even due to the jitter , and has a more modern garbage collector based on generations, avoiding the problems of the reference count that there was in the VB. In addition there are syntactic differences and the default library is quite different, based on everything that has been done for C#. There is a library extra to try to maintain compatibility. It has some options to use one style more than the other.

There is a article on Wikipedia with a comparison. I think it is more out of curiosity, except for those who are thinking of abandoning VB6 and want to know what will change. Although I think that if you are going to start something new, better go from C#. The transition is almost the same to go to the VB.Net and you will participate in a more active community.

 14
Author: Maniero, 2020-06-11 14:45:34