Visual Basic.NET and the .NET Platform [aPress]

By Peter A. Bromberg, Ph.D.
Printer Friendly Version

Peter Bromberg  

Andrew Troelsen's previous aPress title, "C# and the .NET Platform" (see my review here) has been so successful that the editors of aPress asked him to do a more-or-less direct translation of the book -- for VB.NET programmers. The result, Visual Basic.NET and the .NET Platform, is a masterful book.  And, it's not a "direct translation" - except for some useful chapters in the beginning that are good for all programmers, it really zeroes in on VB.NET - a completely different language from classic VB 6.0.

Aimed at the more experienced programmer tackling the new VB .NET for the first time, Andrew Troelsen's Visual Basic .NET and the .NET Platform provides a quick-moving and intelligently rendered tour of .NET, with plenty of in-depth material on classes and object-oriented design.

Troelsen takes the time to illustrate the most important concepts with very basic code and examples, including output. Because of the size of this book (1053 pp), it is loaded with useful details about programming with .NET. Troelsen writes clearly and concisely; his books are part teaching and part reference. For those of us with some programming experience, Troelsen goes that extra step to make the concepts easier to understand.

Personally, having spent a number of months focusing with C# and only now "going back" and using VB.NET, it becomes abundantly clear to me what the hurdles are when a classic VB programmer picks up VB.NET and hopes to master it.  First, programmers using classic VB usually are not well steeped in OOP principles and OOP design patterns - not only did they never really have to learn them, but VB 6.0 doesn't support most of them! And, unfortunately, VB.NET has lots of "familiar" tricks of the trade that had to be designed with only one thing in mind - to make it easier for the classic VB developer to start programming to the .NET Platform.

But the .NET platform is strongly typed and is specifically designed to make exceptionally good use of inheritance, polymorphism, and encapsulation. The result is that classic VB programmers - millions of them - are likely to bring forward a whole bunch of bad design patterns from their VB 5.0 and VB 6.0 days which will be happily perpetuated by VB.NET. And that doesn't even consider all the boo-boos that will be created by the use of the VB.NET Migration Wizard, which DOES NOT enforce Option Strict, and which will happily bring forward anything having to do with COM into COM Interop, including all the code you wrote for COM+ integration!

Andrew Troelson's book is the antidote to these problems. The author's presentation is at a fairly expert level, with plenty of coverage of object-oriented design, as well as a pretty thorough language tutorial. In fact, his demonstrations that it's possible to show VB.NET using the same features as C# underscores the fact that the languages are now equals on the .NET platform. Troelson's tour offers good insight into the .NET Framework itself, with coverage of topics like Intermediate Language (IL), the Common Language Runtime (CLR), as well as deploying .NET components in assemblies. The book clearly shows the three pillars of object-oriented programming -- encapsulation, inheritance, and polymorphism - -which are amply illustrated with code excerpts using objects for shapes, employee, cars, and other simple classes.

Later chapters turn toward building user interfaces, whether through traditional clients using Windows Forms (and graphics programming), or using ASP.NET and Web Forms for building Web-based, thin clients. Final sections look at Web services, which are just as easy to create in VB .NET as with any other supported .NET language. This book assumes some programming knowledge on the part of the reader, but it covers all the bases needed to use the new VB .NET and the .NET Framework effectively. It's a worthy choice for getting onboard with .NET and will be appreciated by any new VB .NET developer, as well as C# and VB6 developers making the transition to Microsoft's latest version

Microsoft Visual Basic .NET provides the productivity features developers need to rapidly create enterprise-critical Web applications. In Visual Basic .NET and the .NET Platform, author Andrew Troelsen shows developers how to use VB .NET for developing virtually every possible kind of .NET application. From Windows-based to Web-based applications, ADO .NET, XML Web services, and object-oriented language features, it's all here. There are detailed discussions of every aspect of .NET development and useful examples that, while somewhat simplified, clearly illustrate the points the author needs to get across.

You won't find extensive treatment of remoting, App Domains or .NET Code Security here as these are more specialized areas. What you will find is a single book that - if studied assiduously - will help any classic VB programmer evolve into a true OOP master. If I were a development manager and my people were involved in transitioning to the .NET platform, I'd make this one required reading. Highly recommended!


Peter Bromberg is an independent consultant specializing in distributed .NET solutions Inc. in Orlando and a co-developer of the developer website. He can be reached at