Post

Microsoft.VisualBasic namespace

After reading through a pretty informative entry by Erik Porter about the performance (or lack thereof) of the ReDim Preserve method of Dynamic Arrays (recommended reading), I was reading through the comments and I found the following:

Now, if only we could convince Microsoft to drop the Microsoft.VisualBasic namespace and force every language to use the core .NET framework.

I know that I should probably let this type of thing just bounce off me and have thicker skin, but I feel this one deserves some comments in return.

I for one an in full favor of having the Microsoft.VisualBasic namespace available.  As a VB.NET developer coming from a heavy BASIC background, there are some things that I’ve just come to expect to have in the VB language.  The other language groups may not agree that these features should necessarily be part of the overall Framework, so where else to put these?  Also, with my limited knowledge of Widbey (I still haven’t gotten a copy :-(, so I have to rely on rumors), a TON of new functionality is going into the Microsoft.VisualBasic namespace.  All of these are to reduce the amount of coding required to handle extremely common tasks; such as sending something the printer.

Rather than be arrogant about the Microsoft.VisualBasic namespace just because it has the words Visual Basic associated with it, why not look at what’s available to you in there that might save you some coding time.  Getting product faster to market with code that has been proven to be solid is better than constantly re-inventing the wheel.  There are truly some goodies hiding in this namespace… and yes, they can even be used from C#, Managed C++, or any other .NET language.  In addition, I’d like to point out there are some goodies hiding with the J# department as well (zip anyone?).

Another point that I think needs to be made clear… it’s not like the Microsoft.VisualBasic namespace is written in something other than .NET… it is 100% .NET code (as far as I know) and as such, wouldn’t be any different than writing your own function to do the same job.  Well, actually, it would, you would have to redistribute the code that you built… the Microsoft.VisualBasic namespace is distributed with every copy of .NET… is now and will aways be.

To the VB.NET team, don’t let these types of comments get you down.  There are those like myself out here that really appreciate the efforts that you put forth.

And one last time, I will repeat that the Microsoft.VisualBasic namespace is NOT the same thing as the Microsoft.VisualBasic.Compatability namespace.  The prior is good, the latter is somewhat bad and should only be used assist in the upgrading of VB6 code.  As soon as you can, remove the necessity of having this namespace as it is NOT redistributed automatically by the .NET framework.

This post is licensed under CC BY 4.0 by the author.