Jesse Liberty spoke with us recently about Visual Basic 2005, and what it means to programmers. By Liberty's estimation, there are significant new additions to this tool set that come just at the right time for many programmers, including Visual Basic 6 programmers that may have been on the fence relative to .NET.
Liberty is the author of "Programming ASP.NET" and "Programming Visual Basic .NET," both from O'Reilly & Associates, as well as other books. He is president of Liberty Associates, Inc., where he provides programming, consulting, and training in ASP.NET, C#, C++, and related topics. He also writes a regular column on .NET for O'Reilly.
While the discussion around VB.NET initially was around language and runtime, the conversation today can be more about tools, said Liberty.
Liberty describes upcoming Visual Basic 2005 as a move toward a Rapid Application Development (RAD) environment. He sees a "huge pool" of VB6 developers moving to this environment.
"They don't want to spend a lot of time re-learning everything they know. They want to be very productive, very fast," Liberty said. And a key feature, My object, allows this, he noted, via quick access to Web services, data sources, plus application and other resources.
These days, as Liberty instructs would-be VB.NET users, he can focus more on application building and tools, rather than on language constructs.
With Visual Studio 2005 tools, he said, "you can use drag and drop to the absolute maximum. You are not looking at every nook and cranny [of the technology] but you are being as productive as possible as fast as possible."
ASP is among the improved tools that can help developers migrating from VB6 to .NET. "The goal of ASP.NET 2.0 was to reduce the amount of coding needed to build a Web app by 70 percent." It is much more about RAD programming. You see that especially as it interacts with databases, and with some of the new powerful controls that are available," said Liberty.
The area that shows the biggest difference versus the first rev of .NET is in displaying data on a Web application. "In 1.1, you would create a connection object, and you'd create a command object, and you'd create a data adaptor object, and a data set. And then you would extract data tables and use data views," said Liberty. With ASP.NET 2.0, all of that work is done for you by the SQL data source control."
The change is vivid – from hundreds of lines of code to one data object dropped on an IDE "pallet." Yet, it is not limiting for developers with very specific needs, notes Liberty, "You can make it do what you want it to do because it has many events that you can hook [to data objects] and many properties you can set," he said. There are, in effect, a lot of places where you can hook in and interact with the data. You have flexibility.
Complicated coding schemes are just one of the bars that the latest version of .NET tries to jump. "I think VB.NET 1.1 was extremely powerful and a distinct step forward," said Liberty, "but the acceptance among the VB6 community has been limited. There are a couple of big hurdles. There is transitioning to .NET. There is transitioning into a fully object-oriented mindset. And finally, VB.NET bears only a family resemblance to VB6."
The new Microsoft tool can be a good step on the road to object-oriented programming, which is one of the more complicated technology aspects that .NET embraces. With VB 2005, "you are using objects all the time, and setting object properties. The whole mindset of object-oriented design becomes very natural and not anything that you particularly notice," he said.
However, Liberty did add that, as projects grow in size, a true object model may be required.