The Visual Basic .NET Runtime Library#
I came across this article on MSDN that started off with the following on the Visual Basic Runtime Library:



Before I get into the operators themselves, I'd like to discuss a somewhat related point. There is a running debate about whether Microsoft Visual Basic® .NET developers should use the Visual Basic runtime library or if they should abandon it in favor of direct use of the Microsoft .NET Framework classes.

I have been programming in one form of Basic or another since the late 1970s. During all that time, the language has had a runtime library. I spent many years working with Digital's VAX Basic, which had a very powerful runtime library, nearly comparable to the one provided with Visual Basic.

Most other languages have runtime libraries as well. This includes notable languages such as C, C++, and Java. No C programmer would ever consider the .NET Framework to support the C language unless it also included the C runtime library.

Why should Visual Basic be any different? I honestly don't know. I fully exploit preexisting functionality whenever possible, and in particular I fully exploit the time-tested and familiar runtime library for any language I use. This includes the Visual Basic runtime library.

I've recently seen posts on newsgroups where Visual Basic .NET developers were trying to figure out how to implement IsDate and IsNumeric by hand using the .NET Framework classes. While admirable from an academic standpoint, such an effort is redundant because those functions already exist in a well-implemented and tested form. This is especially true when the replacement code is 12-15 lines in length, compared to one function call from the runtime library.

To me, and I think to most long-time Visual Basic developers, the runtime library for the language is virtually part of the language. The ability to reuse a powerful preexisting and pre-tested software library is compelling, and I strongly recommend that Visual Basic developers resist the pressure from non-Visual Basic developers to abandon this library and make full use of it in their development.



Here's my two cents about this:

Yes, we should definately be using a runtime library, it's called the .NET Framework Class Library. Nobody disputes the fact that we need a runtime library or at least that it's a major advantage. But there is a significant difference with former languages that I believe the author missed: any .NET language is not a runtime that is executed by itself anymore, but a tool to compile your text files to the one and only true .NET language called IL (Intermediate Language). And this "real" language has one true supplied library which is the .NET Framework Class Library - which you can recognize by the System namespace.

Extensions to this library aren't a bad thing, but should be compared to third party libraries used formerly with non-.NET languages. They are definately not an intrinsic part of the language as the article seems to suggest, and should be used with somewhat more caution. The Visual Basic .NET runtime library (recognizable by the Microsoft.VisualBasic namespace) as I see it is a third party extension to .NET (albeit "coincidentally" from Microsoft itself). There's nothing wrong with that as such, but it should only be used whenever necessary.

However, I strongly oppose to it being included into every project by default, without the possibilty to get rid of it totally. For example, you'll always be able to use the CType, CInt, ... "global functions" which are defined in this library - thereby discouraging you to use their cleaner and faster counterparts (DirectCast, Convert.ToInt32, Object.ToString, ...). So the biggest problem I have with the Visual Basic runtime library is that it makes it too easy to write bad code (global functions, hidden conversions, mistaking language constructs with library classes, ...) and more specifically that its main purpose is to make it seem that Visual Basic .NET is merely an upgrade to VB6 - an idea I strongly oppose to, but that's another story altogether.

If this library would have been built clean from the ground up with the purpose to serve the programmer with great tools and classes, no problem, but I believe that's already been done - it's called the .NET Framework Class Library.
Tuesday, November 07, 2006 10:46:31 PM (Romance Standard Time, UTC+01:00)
Mi página está en renovación, pero agradezco su atención. Siceramente, Gaspar.
Saturday, July 28, 2007 1:15:00 PM (Romance Standard Time, UTC+01:00)
i want net run time library v2.0
for this to can remux subtitle the films but cant find this software can you help me?
Comments are closed.
All content © 2008, Jelle Druyts
On this page

Recent Photos
www.flickr.com
This is a Flickr badge showing public photos from Jelle Druyts. Make your own badge here.
Advertising
Top Picks
Statistics
Total Posts: 345
This Year: 8
This Month: 0
This Week: 0
Comments: 523
Archives
Sitemap
Disclaimer
This is my personal website, not my boss', not my mother's, and certainly not the pope's. My personal opinions may be irrelevant, inaccurate, boring or even plain wrong, I'm sorry if that makes you feel uncomfortable. But then again, you don't have to read them, I just hope you'll find something interesting here now and then. I'll certainly do my best. But if you don't like it, go read the pope's blog. I'm sure it's fascinating.

Powered by:
newtelligence dasBlog 2.0.7226.0

Sign In