Neville
Silverman

Visual Basic Programmer
Microsoft Access Database Programmer

Custom Built Software 
Sydney, Australia
Phone Australia
(02) 9453-0456

Why Choose Visual Basic.Net?

Why Choose Visual Basic.Net?Visual Basic.Net (VB.Net) was introduced in 2002 and is by now a mature and highly productive language. Although the syntax is simple to understand, the language is not "Basic" at all. VB.Net is a fully object-oriented computer programming language that has greatly evolved from the classic Visual Basic (VB6).

Visual Basic.Net has most of the syntax of VB6, but has advanced in scope and complexity. Performance and maintainability are superb. VB.Net has added many new features – structured exception handling, 32 bit Integers, type inference and a far larger class library. Memory fragmentation problems are avoided.

Here is a series of questions that provide a background to Visual Basic.Net. The answers highlight the problems and opportunities facing the Visual Basic Programmer in using Visual Basic.Net.

The number of developers using VB.Net today is roughly the same as for the C# language.

How different is VB.Net to VB6?

VB.Net is a complete rewrite of Visual Basic 6. The syntax is still almost "Visual Basic" as we know it, but everything else has changed. VB.Net now has all the functionality of CSharp (C#).

VB.Net is not VB6 with some enhancements. VB.Net is a completely different Object Oriented language incorporating Encapsulation, Inheritance and Polymorphism. Compatibility with VB6 has been well and truly broken.

Although VB.Net is now Object Oriented, VB.Net is still the best language for business-oriented, database management applications. With strict development standards compliance, most of the complexities of Object Oriented programming can be avoided.

How easy is it to learn the VB.Net language?

Each succeeding Version of Visual Basic.Net makes the language easier to use. But VB.Net is vast – it incorporates Web projects and Web Services, new areas that need specialisation. ADO.NET is not simply a new Version of ADO, but a complete rewrite.

The latest release, Visual Studio 2017 has many features. Together with Object Orientation, a huge learning curve is involved. It is extremely difficult for the Visual Basic Programming neophyte (and old hands too) to learn everything – especially as VB.Net is so vast and is ever evolving.

The Microsoft Help system is much improved. There are now Visual Basic examples, instead of only C# examples. Thankfully, there is a very active VB.Net community. The Internet is a great source of information on Visual Basic.Net. The trouble is trying to work out what is current and what has been superseded.

Is Visual Studio 2017 stable enough to use?

Visual Basic 2017, with the frequent update, is completely stable and acceptable.

  • The slowness of the development environment has improved.
  • Programs developed in VB.Net, together with SQL Server, are fast and efficient.
  • Getting Charting to work involves a large learning curve, but the results are superb.
  • The new Menu control for Websites, with the option to eliminate Tables, reduces page size and download times significantly.
  • Publishing a Website should now be done with FTP, replacing FrontPage Server Extensions.
  • The VS2017 development environment is faster
  • Web sites load faster.
  • There is a spelling checker that indicates errors as you write.
  • CSS colours show the actual HTML code colour
  • Images show a thumbnail.
  • There are many free extensions that are helpful.
  • Updates are frequent and painless.

The Release to manufacturing (RTM) version of Visual Studio 2017 is FREE!

Is there a Visual Basic 6 (VB6) Upgrade Wizard?

Visual Studio no longer has an Upgrade Wizard – for these reasons:

  • The Upgrade Wizard produced too many errors to even remotely ensure a successful upgrade.
  • The output did not run – a multitude of Upgrade problems needed to be resolved.
  • The Upgrade Wizard used a code standard that was difficult to maintain.
  • The Upgrade Wizard used old VB6 controls, with massive amounts of warnings on potential problems, differing Events and Methods.
  • The Upgrade Wizard was a poor learning aid – it did not produce up-to-date code.
  • The conversion of any VB6 API was messy – there were always better VB.Net alternatives.

To get a clean version of the code, it is necessary to start a new project from scratch.

What about Data Grid controls?

Microsoft's DataGridView has all the functionality of any third-party software. It is just as easy to use, if not easier.

  • The DataGridView control is free.
  • It has an unbound mode. This allows the programmer more control than the bound mode.
  • Microsoft's documentation on the DataGridView is dreadful (as usual), but the Web is a great source of information.
  • The Style of each column can be easily set.
  • Font and Colours can be changed – however the standard Grid layout is attractive.

Is it necessary to convert to ADO.Net?

No, it is not essential to convert to ADO.Net – all the old ADO routines are still available. But ADO.Net is now mature and easy to use. ADO.Net is highly efficient and essential for Website database access. ADO.Net should be used when:

  • There are many opens and closes of a database.
  • Disconnected database access is required for a Web site.
  • There are heterogeneous sources of data.
  • There is heavy database activity.

Programming Standards must be enforced

With the close compatibility with C#, all the new features are getting more and more esoteric. The language is becoming difficult to understand. Visual Basic is no longer the simple programming language that was previously so attractive for business applications.

If tight control of programming standards is not rigorously controlled, the Visual Basic programmers are likely to produce code that is not maintainable. This could prove very costly to a company. The programming standards should include a ban on Object Oriented Programming – besides the encapsulation techniques which are an essential part of Visual Basic programming. The programming standard should also restrict complex or seldom used features.

Maintainability and simplicity go hand in hand.