|
Visual Studio 2005 Premieres
Visual Studio 2005 includes new language features and development tools, but do you need it? Delve into this analysis of Microsoft’s much-anticipated release.
by Peter Varhol
November 7, 2005
Technology Toolbox: Visual Studio 2005
The question of whether to upgrade to Visual Studio 2005 is a no-brainer for many of us. When MSDN releases the new version, we will exercise our subscriptions and install the new IDE. You can import existing Visual Studio 2003 projects and have them ready for use within minutes (but don’t try going back to your old IDE at that point).
For others the decision is not as easy. It’s not so much a question of whether to upgrade, but when. Most software development groups are unwilling to change IDEs in the middle of a major project. Others believe that if their current tools of the trade are not broken, there is no reason to upgrade them. And the rest are looking for reasons to move to .NET to begin with.
Does Visual Studio 2005 provide these reasons? Further, does Visual Studio 2005 better support the development of high-quality software and the ability to work as a team, out of the box? To answer these questions, I put Visual Studio 2005 to the test, importing projects, creating others from scratch, coding, testing, and prepping for deployment. I also took a look at the various flavors of VS 2005 that Microsoft will offer, with an eye toward which audience the specific versions will serve (see the sidebar, “A Word About Versions”). Microsoft serves a lot of audiences with Visual Studio, and VS 2005 pushes the reach of the tool both farther up into the enterprise with its Team editions, and simultaneously down into areas typically occupied by hobbyist, departmental, and education-centered developers and would-be developers. In the latter case, Microsoft isn’t so much charting new territory as much as it is reestablishing relationships with a group of programmers it by and large left behind with the introduction of .NET.
I confined my exploration of Visual Studio 2005 to C# (see Figure 1) and Visual Basic (see Figure 2). I’m a strong believer in managed code as a quality and productivity enhancer, and a primary reason Visual Studio is what it is today is because it supports development with managed code. That is not to say that C++, managed or unmanaged, doesn’t have a role in application development today, but it continues to be a diminishing role.
Visual Studio 2005 will be readily recognizable and easily adopted by veteran developers today. One of the true gifts of the development environment across versions is that developers can pick it up and use it immediately, while learning the new features over time. If you open an existing Visual Studio 2003 project, a conversion wizard opens automatically to bring it into the new version and ready it for use (see Figure 3). There are some small differences in the menus, but any Visual Studio developer will be productive within minutes.
However, new features abound, and it will take developers a while to find and use many of them. Visual Studio now features the ability to refactor classes and types. While refactoring is an environment rather than a language feature, some of the capability is available only for C#. The refactorings available include renaming, moving, and overriding type members; reordering parameters; implementing an interface and extracting from a type to an interface; and implementing an abstract class. You accomplish these activities and much more with the Class Designer (see Figure 4), a new and unique modeling tool that enables you to view the class structure of an existing application or create an application by defining its classes visually. You right-click on the class diagrams in the Class Designer to select the type of refactoring you want to implement. The Class Designer makes the appropriate changes in the diagram, and reflects those changes automatically in the code. It is worthwhile to note that refactoring is done only through the diagram and not through the code itself.
The Class Designer can also serve as a starting point for application development, minimizing manual coding while making the most from a visual design process. Build a new application by placing classes from the toolbox onto the Designer form, where you can visually add methods, establish class relationships, define interfaces, and create structures and delegates. The Class Designer makes switching back and forth between visual modeling and coding seamless, with the code and model complementing each other.
It is unfortunate that Microsoft has chosen to support a modeling approach different than the widely accepted Unified Modeling Language (UML). Microsoft’s class-only approach is an easy and highly usable method of creating class diagrams that would complement any UML implementation. However, the Class Designer requires you to have a much deeper understanding of your application before beginning. In other words, you might as well use UML as your starting point anyway, and simply implement your UML class diagrams using the Class Designer.
Back to top
|