REDMOND, Wash., April 9, 2002 — Has there ever been a better time to be a Visual Basic developer? Probably not, according to Zagat Survey. The New York City-based company, which provides business travelers and vacationers advice on restaurants and hotels in cities worldwide, needed a more efficient way to edit and manage the huge amount of data it gathers for its books and distributes to its content partners.
Zagat’s developers turned to Microsoft Visual Basic .NET to better tackle this mammoth task. “With Visual Basic .NET, our developers built the application we designed without any troublesome workarounds,” says Patrick O’Toole, the lead developer on the project. “The transition to Visual Basic .NET was smooth and our developers went home at night knowing their code was solid, the proof coming a month after when we re-used the components successfully in two other related applications.”
The introduction of Visual Basic .NET earlier this year ushered in a new era of application development. Microsoft created the new development tool to maintain the hallmark of the original Visual Basic — rapid application development — while also offering developers a host of new conveniences, including the ability to use object-oriented code in their applications. As a result, developers can more easily maintain applications and re-use components in different applications, says Christopher Flores, Visual Studio product manager.
“This new version of Visual Basic maintains the spirit of old but adds powerful features and technologies to build today’s distributed applications,” Flores says. “It creates an environment where conscientious developers can easily create high-quality code and re-usable components. This translates to better ROI for companies because of lower costs for code re-writing and updates.”
Combining the Old with the New
Visual Basic .NET maintains the visual design environment that is familiar to millions of Visual Basic developers and that enables rapid development of applications. In addition, applications built with Visual Basic .NET benefit from the power of the underlying .NET framework libraries. Developers can create applications for Windows, Web, server, and XML Web services, and can take advantage of new technologies, such as threading, enhanced cryptography, remote debugging and visual inheritance. In addition, Visual Basic developers can now easily make their applications accessible by wireless, Internet-enabled devices.
“Developers have all the tools now to build Windows, Web, server, and fully distributed applications in the same development environment,” Flores says. “They can hone their skills in Visual Basic .NET with certainty that these skills will address most, if not all, of the application profiles they are likely to encounter.”
Similarly, companies know their investment in application development will address both current and future needs, client and server applications, and internal- or external-focused applications, Flores adds. For example, a company can build an internal application today with Visual Basic .NET and use XML Web services to expose it to customers and partners at a later date. “Visual Basic .NET is the optimal development environment for those companies that need agility to meet changing needs,” Flores says.
mhe.net ( www.mhe.net ) is another company that has made the switch to Visual Basic .NET, and is already noticing the benefits. The company builds secure online services such as its SecureCreditServer.net, an online component with access to credit bureau data.
“Before Visual Basic .NET, distributed-application development required highly-trained experts,” says Michael Hoenig, president of mhe.net. “But since our developers are adept in Visual Basic, they can produce XML Web services with almost trivial effort.”
mhe.net also discovered “a lot of power under the covers” of Visual Basic .NET, using the .NET framework’s extensive encryption library to improve its security model, Hoenig says.
Making the Flexible Switch to Visual Basic .NET
Moving to Visual Basic .NET is not an all-or-nothing proposition, Flores says. For example, upgrading existing Visual Basic Version 6 applications to Visual Basic .NET isn’t necessary. For those companies that need the performance or feature improvements offered by the .NET framework, Microsoft provides an upgrade tool and guidelines for upgrading Visual Basic 6 applications. However, many companies will opt for a conservative approach and leave existing Visual Basic 6 applications alone, using Visual Basic .NET for updates or new applications, Flores says. These Visual Basic .NET applications can be deployed side-by-side on the same server as existing Visual Basic 6 applications.
Applications written in Visual Basic .NET can re-use custom or third-party ActiveX and COM components, as well as hundreds of new components available for the .NET environment. “So developers have a large head start on their projects,” Flores says. For example, if an existing application uses business logic in a COM component, that component can be easily re-used in a Visual Basic .NET application.
“One of the main successes for the industry is Visual Basic .NET’s legions of third-party components,” Flores says. “These range from unique user-interface controls to specialized business components.”
Flores says Visual Basic .NET also offers an excellent path to object-oriented programming for developers who use Visual Basic 6 because it offers the same familiar development environment. “Visual Basic .NET incorporates many things that Visual Basic developers have been asking for throughout Visual Basic’s 10-year existence,” he says, “features such as browser-based application delivery and setup, elimination of the ‘DLL-hell’ problem, simplified and scalable data access, improved Intellisense for automatic code completion, and debugging for Web applications.”
Tackling Deployment, Data-Access Challenges
Microsoft spent five years developing Visual Basic .NET, and early adopters provided input that led to important changes during the two-year beta cycle. The result is development environments that combine hundreds of new visible and behind-the-scenes improvements, including simplified application deployment and simplified data access. Microsoft designed Visual Basic .NET to solve two of the most difficult deployment issues: maintaining code on remote client PCs and server-side application compatibility.
Changes to Web applications are immediately reflected when a remote user’s browser accesses the applications. However, browsers do not offer the rich user experience of a Windows application and lack access to local resources. “Developers have sometimes been reluctant to deploy Windows applications because maintaining these remote clients can be difficult when changes are necessary,” Flores says. “Visual Basic .NET eliminates this concern through new deployment options for Windows-client applications.” By using the .NET framework, a Windows application can be automatically accessed and installed by typing a URL into a browser.
The .NET framework also fixes another deployment challenge, known to developers as “DLL hell.” In the past, Windows application developers often provided new or modified dynamic link libraries (DLLs), which perform specific tasks within applications. These components often had dependencies on other DLLs, meaning they wouldn’t work without access to these other DLLs. These mutual relationships worked fine unless another application was incompatible with the modified DLL or one of its dependents, or another application overwrote this DLL. With the .NET framework, DLLs load into memory with each application, eliminating the compatibility issues. In addition, deployment no longer requires the arduous registration of COM objects, the component routines of a program, which are often handled differently on different versions of Windows.
Simplified and Powerful Data Access
Another addition, ADO .NET, makes it easier for developers to access and manipulate data in databases that look for relational links between information. Some of these databases include Microsoft Access, Microsoft SQL Server 2000 and Oracle 8i, Flores says.
Another benefit of ADO.NET is its ability to handle disconnected use. For example, a disconnected laptop application can access the application data needed, manipulate it off-line, and re-connect to the database to make updates. The data is transferred back to the database using standards-based XML.