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

8

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

    
asked by anonymous 18.09.2016 / 22:59

1 answer

12

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 the BASIC that was the product that gave birth to Microsoft and created an entire industry from the 1970s. The first VB was born in 1991 and VB6 was released in 1998. It slowly began to have some form of very rudimentary object orientation and failure.

VBA

Visual Basic for Applications is a variation of VB6 that started being embedded in Microsoft products and licensed for third parties to use in their applications as a way to extend them and enable the creation of scripts. It has some limitations, 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 unsafe. Although many people still use it, this is a serious mistake, nor is it worth talking about details of obsolete technologies and that is the most important thing to know about them. In the case of VBA the recommendation is to use Visual Studio Tools for Applications .

VB.Net

VB.Net would be the evolution of VB to run on top of .Net. But the language is so different that it can scarcely be called evolution. There has been an effort to give compatibility to older VB6 applications, but a lot of things do not work the same. In fact, you should not even try to use the old way of programming.

Over time VB.Net has been getting closer to C # and abandoning the VB style altogether. Although still evolving and supporting, Microsoft did not do a good job trying to keep it on a good level and each time has fewer programmers using the language, preferring C #. There are very few advantages of the language in relation to C # and many disadvantages.

Integration of any .Net language with other products is possible. Microsoft today adopts it as the primary tool for extending the flexibility of its applications.

VB.Net is truly oriented the object has a runtime ( the CLR ) much better, much faster, even based on JITter , and has a more modern generation-based garbage collector, avoiding the problems of counting reference in the VB. In addition there are syntactic differences and the default library is quite different, based on everything that was done for C #. There is an extra library to try to maintain compatibility. You have some options to use one style more than the other.

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

    
18.09.2016 / 23:21