A major advance for Windows developers with great RAD and web development tools.
Microsoft's new Visual Studio is its most significant development tool since Visual Basic in 1991. This product targets the .Net framework, Microsoft's common runtime layer that has the potential to run across multiple platforms.
Even if it is never ported beyond Windows, it represents a fundamental change in how applications are developed on the Microsoft platform. Instead of writing code for the hugely complex Windows API, developers can use a new, clean and fully object-oriented class library.
Application types include WinForms, which are traditional Windows applications, or WebForms, where the user interface is presented in a web browser using the .Net version of Active Server Pages. The design of the .Net framework lets you use a class library from any .Net language.
Another radical change is in the component model. Until now, Microsoft has heavily promoted COM (Component Object Model), the technology behind ActiveX controls and used in high-end multi-tier applications. The .Net framework has its own built-in component model and does not need COM. New-style components are also easier to deploy, since they no longer use the Windows Registry.
Finally, the .Net framework has both security and component versioning built in, solving two of the most persistently troublesome aspects of the Windows platform.
Although.Net is fully supported, Visual Studio.Net is a transitional product. Visual Basic and C# (Microsoft's new language) compile exclusively to the intermediate language (IL) used by the Framework.
Visual C++ can target either Win32 native code, or the .Net framework.
Visual FoxPro targets only Win32. The Active Server Pages development tool in previous versions of Visual Studio, Visual InterDev, no longer exists, being replaced by the WebForm designer available to all .Net languages. The other transitional aspect is the interoperability between the .Net framework and old-style Windows and COM applications.
Any COM component can be used in a .Net app, and any .Net component can be exposed to a COM app. ActiveX controls can still be used, and you can easily call Win32 native code in dynamic link libraries. This interoperability is critically important, since typical .Net applications will use Microsoft's BackOffice server applications, which are native Win32 code.
Apart from Visual FoxPro, all the Visual Studio languages now use the same IDE (Integrated Development Environment) and form design tools. Online help is fully integrated into the IDE, complete with a dynamic Help feature that lists relevant topics in a docked window as you focus on different code words or tools. Docked windows can be set to auto-hide, giving increased screen space for actual coding or visual design.
There is also good use of tabbed windows, letting you flip quickly between visual and code views, and the code editor now has collapsible code blocks for easy navigation of large files. A WebForm is an HTML page, so Visual Studio includes a web page designer with both visual and source code editing.
Visual Basic developers will have to come to terms with many changes. The language has suddenly grown up, and many often-requested features have appeared. These include full inheritance, classes that have proper constructors, and structured exception handling instead of the archaic 'On Error Goto'.
The downside is that backward compatibility has gone out of the window. There is sufficient compatibility that converting old code should not be too difficult, but errors can easily creep in. As a language it is hugely improved, although a little more demanding for novices.
It is also a full .Net citizen, ending the old dilemma about whether to choose C++ power or VB productivity.
Visual C++ looks more familiar. There are two major new features: managed extensions for .Net as mentioned above, and Attributed Programming, a way of simplifying COM development by specifying attributes for classes.
Although managed extensions let you compile to IL, it is disappointing that you cannot use the WinForm designer with Visual C++.
For web development this is a great improvement. Instead of VB Script, VB is available for web apps, running on the server for cross-browser compatibility. Web services use the XML SOAP protocol to handle remote object invocation.
Microsoft has yet to announce a price for Visual Studio .Net.
Contact: Microsoft 0345 002000 www.microsoft.com