Introducing Visual Studio .NET

Visual Studio .NET is a complete set of development tools for building ASP Web applications, XML Web services, desktop applications, and mobile applications. Visual Basic .NET, Visual C++ .NET, Visual C# .NET, and Visual J# .NET all use the same integrated development environment (IDE), which allows them to share tools and facilitates in the creation of mixed-language solutions. In addition, these languages leverage the functionality of the .NET Framework, which provides access to key technologies that simplify the development of ASP Web applications and XML Web services.

This topic contains information about:

  • Visual Studio .NET Highlights
    Read overviews of Visual J#, Smart Device Applications, ASP.NET Mobile Designer, Windows Forms, XML Web services, and XML support in Visual Studio .NET.
  • The .NET Framework
    Read a brief overview of the Common Language Runtime, unified programming classes, and ASP.NET.
  • Getting Started
    Discover tutorials, templates, and migration information to get you up and running with this version of Visual Studio.

Visual Studio .NET Highlights

This section contains information about some of the latest tools and technologies available in this release of Visual Studio.

Visual J#

Visual J# is a development tool that developers who are familiar with the Java-language syntax can use to build applications and services on the .NET Framework. It integrates the Java-language syntax into the Visual Studio .NET integrated development environment (IDE). Visual J# also supports most of the functionality found in Visual J++ 6.0, including Microsoft Extensions. Visual J# is not a tool for developing applications intended to run on a Java Virtual Machine. Applications and services built with Visual J# will run only in the .NET Framework. Visual J# has been independently developed by Microsoft. It is not endorsed or approved by Sun Microsystems, Inc. For more information, see Introducing Visual J#.

Smart Device Applications

The Visual Studio .NET integrated development environment now includes tools for developing applications for smart devices, such as the Pocket PC. Using the tools and the .NET Compact Framework, a subset of the .NET Framework, you can create, build, debug, and deploy applications that run on the .NET Compact Framework in personal digital assistants (PDAs), mobile phones, and other resource-constrained devices. For more information, see Smart Device Projects.

ASP.NET Mobile Designer

ASP.NET Mobile Designer extends ASP.NET and the .NET Framework, allowing you to build Web applications for mobile phones, PDAs, and pagers. This designer is integrated into the Visual Studio IDE. You can create mobile Web applications, use the Mobile Designer to modify a mobile Web form, and then build and run the application, all from within Visual Studio. For more information, see Getting Started with the ASP.NET Mobile Designer.

Web Forms

Web Forms are an ASP.NET technology that you use to create programmable Web pages. Web Forms render themselves as browser-compatible HTML and script, which allows any browser on any platform to view the pages. Using Web Forms, you create Web pages by dragging and dropping controls onto the designer and then adding code, similar to the way that you create Visual Basic forms. For more information, see Introduction to Web Forms Pages.

Windows Forms

Windows Forms is the new platform for Microsoft Windows application development, based on the .NET Framework. This framework provides a clear, object-oriented, extensible set of classes that enables you to develop rich Windows applications. Additionally, Windows Forms can act as the local user interface in a multi-tier distributed solution. For more information, see Introduction to Windows Forms.

XML Web Services

XML Web services are applications that can receive requests and data using XML over HTTP. XML Web services are not tied to a particular component technology or object-calling convention and can therefore be accessed by any language, component model, or operating system. In Visual Studio .NET, you can quickly create and include XML Web services using Visual Basic, Visual C#, JScript, Managed Extensions for C++, or ATL Server. For more information, see Programming the Web with XML Web Services.

XML Support

Extensible Markup Language (XML) provides a method for describing structured data. XML is a subset of SGML that is optimized for delivery over the Web. The World Wide Web Consortium (W3C) defines XML standards so that structured data will be uniform and independent of applications. Visual Studio .NET fully supports XML, providing the XML Designer to make it easier to edit XML and create XML schemas. For more information, see XML Schemas and Data and XML Designer.

The .NET Framework

The .NET Framework is a multi-language environment for building, deploying, and running XML Web services and applications. It consists of three main parts:

  • Common Language Runtime   Despite its name, the runtime actually has a role in both a component's runtime and development time experiences. While the component is running, the runtime is responsible for managing memory allocation, starting up and stopping threads and processes, and enforcing security policy, as well as satisfying any dependencies that the component might have on other components. At development time, the runtime's role changes slightly; because it automates so much (for example, memory management), the runtime makes the developer's experience very simple, especially when compared to COM as it is today. In particular, features such as reflection dramatically reduce the amount of code a developer must write in order to turn business logic into a reusable component.
  • Unified programming classes   The framework provides developers with a unified, object-oriented, hierarchical, and extensible set of class libraries (APIs). Currently, C++ developers use the Microsoft Foundation Classes and Java developers use the Windows Foundation Classes. The framework unifies these disparate models and give Visual Basic and JScript programmers access to class libraries as well. By creating a common set of APIs across all programming languages, the common language runtime enables cross-language inheritance, error handling, and debugging. All programming languages, from JScript to C++, have similar access to the framework and developers are free to choose the language that they want to use.
  • ASP.NET   ASP.NET builds on the programming classes of the .NET Framework, providing a Web application model with a set of controls and infrastructure that make it simple to build ASP Web applications. ASP.NET includes a set of controls that encapsulate common HTML user interface elements, such as text boxes and drop-down menus. These controls run on the Web server, however, and push their user interface as HTML to the browser. On the server, the controls expose an object-oriented programming model that brings the richness of object-oriented programming to the Web developer. ASP.NET also provides infrastructure services, such as session state management and process recycling, that further reduce the amount of code a developer must write and increase application reliability. In addition, ASP.NET uses these same concepts to enable developers to deliver software as a service. Using XML Web services features, ASP.NET developers can write their business logic and use the ASP.NET infrastructure to deliver that service via SOAP. For more information, see Soap Community Links.

For more information, see Overview of the .NET Framework and Inside the .NET Framework.

Getting Started

You can use several methods to become familiar with this release of Visual Studio .NET.

Visual Studio .NET Walkthroughs

Walkthroughs guide you through the completion of a task using Visual Studio .NET. Use walkthroughs to become familiar with the product and see how the various technologies can be used together.

  • Rich Client Application Walkthroughs
    Describes the process for creating an MFC-based rich client application.
  • Web Forms Application Walkthroughs
    Describes the process for creating a Web-based application integrated with business-object components written for Visual Basic, Visual C#, or Managed Extensions for C++.
  • Creating and Accessing XML Web Services Walkthroughs
    Describes the process for creating an XML Web service using Visual Basic or C#, Managed Extensions for C++, or ATL Server, and then using the XML Web service from an application.
  • Walkthrough: Creating a Distributed Application
    Describes the process for creating a multi-tiered, distributed application using Visual Basic or Visual C#.
  • Visual J# Walkthroughs
    Lists the many walkthroughs that focus on using Visual J# to complete a programming task, such as creating a distributed application, creating and accessing XML Web services, and using Web forms, among others.

For additional walkthroughs, see Visual Studio Walkthroughs.

Enterprise Templates

Visual Studio .NET provides several project templates that you can use to get started on developing distributed applications. Enterprise templates define the initial structure of a distributed application and also provide architectural and technological guidance for application design. In addition to pre-defined enterprise templates, you can also create custom templates that can be used by developers in a team environment. For more information, see Enterprise Template Walkthroughs and Advantages of Using Enterprise Templates to Create Distributed Applications.

Migrating Existing Applications

With each release, some tools and technologies are replaced with better methods for achieving your programming goals. As a result, applications created with an earlier version of Visual Studio might need to be updated in order to load and build correctly with the current version of Visual Studio.

For applications created with See
Visual Basic Upgrading from Visual Basic 6.0
Visual C++ Porting and Upgrading
Visual InterDev Upgrading Visual InterDev 6.0 Applications to Visual Studio .NET and Migrating to Web Forms
Visual J++ 6.0 Upgrading from Visual J++ 6.0 and Converting Visual J++ Applications to Visual C#

See Also

What's New in Visual Studio .NET | Benefits of ADO.NET | ASP.NET Technology Backgrounder | Samples and Walkthroughs