|Important||This document may not represent best practices for current development, links to downloads and other resources may no longer be valid. Current recommended version can be found here.|
Introducing Visual Studio
Visual Studio is a complete set of development tools for building ASP.NET Web applications, XML Web Services, desktop applications, and mobile applications. Visual Basic, Visual C++, Visual C#, and Visual J# 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.
Visual Studio Highlights
This section contains information about some of the latest tools and technologies available in this release of Visual Studio.
Visual Studio Tools For Office
Microsoft Visual Studio 2005 Tools for the Microsoft Office System can help you create solutions by extending Word 2003 documents and Excel 2003 workbooks using Visual Basic and Visual C#. Visual Studio Tools for Office includes new Visual Studio projects for creating code behind Word documents, Word templates, Excel workbooks, and Excel templates. For more information, see.
Visual Web Developer
Visual Studio features a new Web page designer named Visual Web Developer that includes many enhancements for creating and editing ASP.NET Web pages and HTML pages. It provides a simpler, faster way to create Web Forms pages than in Visual Studio .NET 2003.
Visual Web Developer features improvements in all areas of Web site development. You can create and maintain Web sites as local folders, in Internet Information Services (IIS), or on an FTP or SharePoint server. The Visual Web Developer designer supports all ASP.NET enhancements, including nearly two dozen new controls that simplify many Web development tasks. For more information, see.
Smart Device Applications
The Visual Studio integrated environment includes tools for targeting devices such as PDAs and Smartphones. Improvements include Visual C++ tools and native device runtimes, managed designers that provide improved platform-specific WYSIWYG and multiple form factor support, a new emulator, data handling tools similar to the desktop, and end-user deployment projects that eliminate the manual editing of .inf files. For more information, see.
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.
Windows Forms is for creating Microsoft Windows applications 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, you can quickly create and include XML Web Services using Visual Basic, Visual C#, JScript, or ATL Server. For more information, see.
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 fully supports XML, providing the XML Designer to make it easier to edit XML and create XML schemas. For more information, see XML Designer.
Visual Studio Team System
Visual Studio 2005 Team System is a productive, integrated, and extensible software development life-cycle tools platform that helps software teams by improving communication and collaboration throughout the software development process. It consists of the following:
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 gives 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 Web applications. ASP.NET includes a set of controls that encapsulate common HTML user interface elements, such as text boxes, buttons, and list boxes. These controls run on the Web server, however, and render 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 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.