If we had a Visual Basic app to upgrade, we’d never use automation tools. Now, you might be thinking that’s a pretty bold claim! Let’s roll back in history to provide you with an explanation.
Back in 1991, when Visual Basic 1.0 was released by Microsoft, it became popular among enterprises that wanted to build in-house applications. Over time, Visual Basic attracted a large community of developers who loved it as a friendly environment for beginners. In a nutshell, Visual Basic showed us what programming could do.
Now there are thousands of VB apps scattered throughout the world filled with spaghetti code. Why is this? Because newcomers weren’t skilled enough to follow coherent development practices when they were developing systems with Visual Basic. This leaves little hope that automation tools can convert this code to the new platform properly.
Or can they? Let’s find out together.
Spagetti code is technology jargon that refers to code that is written without a coherent structure and rules.
What Is Happening with Visual Basic in 2021: To Migrate or Not to Migrate?
Microsoft no longer supports Visual Basic — its last version was designated as a legacy in 2008 — though it does still provide the community with applicable documentation. Many users are still using WinForms to build business applications in Windows, and a few are building websites using ASP.NET WebForms.
However, with new technologies on the horizon, Visual Basic has become an outsider in the industry; it doesn’t quite fit in. That’s why Microsoft rolled out a VB and C# coevolution strategy to unify the .NET ecosystem and facilitate the transition from legacy VB code. Using C# capabilities, for example, VB apps could be leveraged with the web interface or powered with mobile access. This approach has proven itself many times over.
By the time of the latest .NET Conference, named “Focus on Windows,” it had become clear: Microsoft won’t evolve Visual Basic as a language but will integrate it into the .NET environment. That leaves almost no choice but to migrate to the newest .NET version.
How to Transfer VB to a Web App with Automation Tools
As soon as the need for migration emerged, Microsoft (in collaboration with partners) launched specialized conversion tools transforming VB code to C#, VB.NET, and .NET platforms. The recommended tools include:
- Microsoft Visual Basic Upgrade Wizard: a tool suitable for small and medium projects. It will partially migrate your code to Visual Basic 2008.
- Visual Basic Upgrade Companion (VBUC): a more powerful tool to upgrade Visual Basic 6.0 apps to the .NET platform.
- Code Architects VB Migration Partner: a tool for converting code from VB6 to VB.NET.
In its documentation, Microsoft points out that these tools can’t be an end-to-end solution.
How Do Automation Tools Work?
Transferring VB code with automation tools is a fast and cost-effective way to upgrade legacy software, compared to rewriting from scratch. The migration goes through a number of stages:
As we can see, conversion tools alone leave wide gaps in the migration. In any case, you should assemble a qualified team who’ll handle the rest of the work (about 70%). But, if your project is simple and non-buggy, you needn’t be bothered with the manual work; you may be able to make do with the software only.
Disadvantages of Visual Basic Conversion Tools
As we mentioned previously, conversion tools are imperfect. There are serious disadvantages of automated migration:
Can’t deal with complex projects
Enterprise users who have dozens of VB apps under one roof won’t benefit from conversion software. Even though software providers claim its efficiency for apps with 650K lines of code and more, they have many dependencies that are difficult to structure. As such, the amount of manual work will outweigh the pros of automated migration. From a practical standpoint, it’s not cost-effective in the long run.
Read the full article on ModLogix