Visual Studio .NET Technology Map
The Microsoft® Visual Studio® .NET Technology Map is your guide to getting started with the latest Microsoft development environment, Visual Studio .NET. Microsoft .NET introduces a new world of development possibilities, and Microsoft Visual Studio is the tool of choice to work with these new technologies.
For a complete list of new .NET content, please visit the .NET Six-Week Series Guide.
Exploring the .NET Languages
Developing for the Web
Automating and Enhancing Visual Studio
Creating Installation Projects
Connecting to Other Systems
Building Smart Client Interfaces
Debugging Your Programs
Using the Enterprise Tools
MSDN subscribers should receive Visual Studio .NET with their February 2002 set of DVDs, or they can download the product directly from the MSDN Web site. If you are not an MSDN subscriber, check out the Visual Studio .NET home page for information on pricing and availability.
Choosing Your Edition
Before you purchase Visual Studio .NET, you should be aware that there are different editions available so you can choose the best one for you and/or your organization. There are three main editions available:
- Visual Studio .NET Enterprise Architect
- Visual Studio .NET Enterprise Developer
- Visual Studio .NET Professional
For a detailed description of the different features included in each of the editions of Visual Studio .NET, check out this handy comparison chart. In addition to the editions listed above, there will be an Academic and a Trial edition, although details on these versions have not yet been released.
Visual Studio .NET is a development environment, but it is built on and for the .NET Framework. The .NET Framework provides, through a set of class libraries, the functionality used by all the .NET languages, including Microsoft Visual C#™ and Microsoft Visual Basic® .NET. Also underlying these languages is a set of runtime services, called the common language runtime, which manages the execution of code produced out of any and all .NET languages. For detailed information, see:
- Overview of the .NET Framework
- Common Language Runtime Overview
- Introduction to the .NET Framework Class Library
The .NET Framework is also available separately from Visual Studio .NET. So, if you do not have Visual Studio .NET, or if you want the smallest download possible to get started exploring .NET development, the .NET Framework SDK is for you:
Microsoft Visual Studio provides a single development environment for programming in Visual C++®.NET, Visual C#, and Visual Basic .NET. Any one or a combination of these languages can be used to create ASP Web applications, XML Web services, desktop applications, and mobile applications based on the .NET Framework. For more information on these three languages, see:
- Language Innovations in Visual Basic .NET
(Or, if you are planning to upgrade from Visual Basic 6.0, the article Preparing Your Visual Basic 6.0 Applications for the Upgrade to Visual Basic .NET may provide a more useful introduction.)
- C# Introduction and C# Reference
- Modern Language Features Enhance the Visual C++ .NET Compiler
- What's New in Visual C++ .NET
Visual Studio .NET supports the development of a wide variety of applications, including Web applications. Visual Studio supports integrated HTML and XML editing and the creation of Microsoft ASP.NET Web Forms. For more information on the Web development features of Visual Studio .NET, see:
- Introduction to ASP.NET and Web Forms
- Web Applications Technology Map
- Lab 6 of the Visual Studio .NET Tutorial: Building a Browser-based Application
Also available is the Mobile Internet Toolkit, which extends the Visual Studio .NET integrated development environment (IDE) to support the creation of markup content for mobile devices (such as cell phones and PDAs).
The past several versions of Visual Studio have supported some level of automation, but the latest version of the IDE has greatly improved upon the existing support. Visual Studio .NET can be enhanced through two key methods: automation of its object model and the creation of custom add-in modules to extend the functionality of the product. The February 2002 issue of MSDN Magazine contains two excellent articles on these topics:
A related topic, how to generate and compile source code using .NET, is covered in its own section of the .NET Framework SDK documentation:
Visual Studio .NET includes installation as an additional, language-independent project type that you can create and add to your solution. A single installation project can be used to deploy the output of one or more projects, even if those projects are written using different languages. The final install program built from the Visual Studio installation project uses Microsoft Windows® Installer technology, provides its own uninstall, and can be deployed in a variety of ways. For detailed information on deploying projects created in Visual Studio .NET, see:
- Deployment Changes in Visual Basic .NET
(Although it appears specific to Visual Basic, this article provides a good overview of the setup process, which is mostly language agnostic.)
- .NET Framework Deployment Guide
In addition to any dependencies your programs may have, remember that your .NET applications require the .NET Framework to be installed on the target machine. This includes ASP.NET applications, which require the .NET Framework on the Web server but not on the Web clients (because the clients are not actually running any .NET code, merely viewing a .NET application through a browser).
Previous versions of Microsoft development environments have included some form of visual way to describe the connection(s) between the application you are developing and various server resources, such as databases, but Visual Studio .NET takes that concept to a new level. The Server Explorer, which is represented by a tool window in the Visual Studio IDE, allows you to browse the resources available from your local machine and any other machine that is accessible to you on the network. Once a machine has been chosen, the Server Explorer queries the resources exposed by that machine (such as databases, services, message queues, event logs, performance counters, and even Web services) and makes them available as drag-and-drop objects with which you can visually interact. All of these objects are supported by a corresponding class, or set of classes, in the .NET Framework, but the Server Explorer provides a visual interface to that same type of programming.
With the focus on XML Web services and ASP.NET, Web development may seem to be getting all the attention, but Visual Studio .NET has just as much to offer to smart client developers as well. Building on the "visual" features that have made Visual Basic and Visual C++ so powerful, Visual Studio .NET includes a completely new form design tool. The underlying technology used in .NET to create and manage a smart client interface is known as Windows Forms, and is a powerful successor to the interface tools of previous development environments. This new interface engine includes layout features like docking and anchoring of controls, improved graphics support including transparency, shaped forms, and more. There is a wealth of information on MSDN about Windows Forms, including these introductory materials:
- Using the Microsoft .NET Framework to Create Windows-based Applications
- Getting Started with Windows Forms (for Visual Basic 6.0 developers)
- Shaped Windows Forms and Controls in Visual Studio .NET
- One of the major benefits of using a development environment (compared to performing command-line compiles and using a text editor) is the built-in debugging capabilities. Version 6.0 of both Visual Studio and Visual Basic have quite extensive debugging tools; Visual Studio .NET includes those tools and more. New features include multi-language (programming language, that is, such as Visual Basic .NET and C# in the same session) and multi-machine debugging.
Visual Studio .NET Enterprise Architect is designed for use by developers and designers who are creating distributed systems and require tools to assist them in guiding a development team. Microsoft Visio® 2002 is included and integrated with this edition to provide support for database and object modeling based on Unified Modeling Language (UML).
- The target audience of the Enterprise Architect edition are larger teams in need of architectural guidance—a role that is facilitated by the new Enterprise Templates feature of Visual Studio and the associated Template Description Language. These new features allow the architect to guide developers through example (by providing the initial starting or template project) and through policies (rules that describe how development should occur). These technologies work together to integrate the best practices and standards of your specific development team right into the Visual Studio environment. It is even possible, using the Template Description Language, to add new project-specific topics into the Visual Studio Help system for the benefit of the developers.
Included with the Enterprise Developer edition (as well as the Enterprise Architect edition, which contains all the features of all editions below it) is a tool for load testing Web applications, called Application Center Test (ACT). ACT is integrated right into Visual Studio, appearing as another project type in the two Enterprise editions that include it, and allows you to write code that describes and controls the test performed against a target Web application. This tool and the general method for using it to test a Web site is documented in the following section of the .NET Framework documentation: