Visual Studio
Visual Studio
It can be used
to develop console and graphical user interface applications along with Windows Forms applications,
web sites, web applications, and web services in both native code together with managed code for all
platforms supported by Microsoft Windows, Windows Mobile, Windows CE, .NET Framework, .NET
Compact Framework and Microsoft Silverlight
Visual Studio supports different programming languages by means of language services, which allow the
code editor and debugger to support (to varying degrees) nearly any programming language, provided a
language-specific service exists. Built-in languages include C/C++ (via Visual C++), VB.NET (via Visual
Basic .NET), C# (via Visual C#), and F# (as of Visual Studio 2010[3])
Architecture
Visual Studio does not support any programming language, solution or tool intrinsically. Instead, it
allows plugging in various types of functionality. Specific functionality is coded as a VSPackage. When
installed, the functionality is available as a Service. The IDE provides three services: SVsSolution, which
provides the ability to enumerate projects and solutions; SVsUIShell, which provides windowing and UI
functionality (including tabs, toolbars and tool windows); and SVsShell, which deals with registration of
VSPackages. In addition, the IDE is also responsible for coordinating and enabling communication
between services.[4
features
1. Code editor
(Visual Studio, like any other IDE, includes a code editor that supports syntax highlighting and
code completion using IntelliSense for not only variables, functions and methods but also
language constructs like loops and queries.)[13] IntelliSense is supported for the included
languages, as well as for XML and for Cascading Style Sheets and JavaScript when developing
web sites and web applications.[14][15
Debugger
2. Debugger
Visual Studio includes a debugger that works both as a source-level debugger and as a machine-
level debugger. It works with both managed code as well as native code and can be used for
debugging applications written in any language supported by Visual Studio. it can also attach to
running processes and monitor and debug those processes. [20] If source code for the running process is
available, it displays the code as it is being run. If source code is not available, it can show the
disassembly.
3. Designer
Visual Studio includes a host of visual designers to aid in the development of applications. These
tools include:
4. Other tools
The open tabs browser is used to list all open tabs and to switch between them. It is invoked
using CTRL+TAB.
Properties Editor
The Properties Editor tool is used to edit properties in a GUI pane inside Visual Studio. It lists all
available properties (both read-only and those which can be set) for all objects including classes,
forms, web pages and other items.
Object Browser
The Object Browser is a namespace and class library browser for Microsoft .NET. It can be used
to browse the namespaces (which are arranged hierarchically) in managed assemblies.
Solution Explorer
. The Solution Explorer is used to manage and browse the files in a solution.
Team Explorer
Team Explorer is used to integrate the capabilities of Team Foundation Server, the Revision
Control System into the IDE (and the basis for Microsoft's CodePlex hosting environment for
open source projects). In addition to source control it provides the ability to view and manage
individual work items (including bugs, tasks and other documents) and to browse TFS statistics.
Data Explorer
Data Explorer is used to manage databases on Microsoft SQL Server instances. It allows creation
and alteration of database tables.
Server Explorer
The Server Explorer tool is used to manage database connections on an accessible computer. It
is also used to browse running Windows Services, performance counters, Windows Event Log
and message queues and use them as datasource.[31]
5. [edit] Extensibility
Visual Studio allows developers to write extensions for Visual Studio to extend its capabilities.
These extensions "plug into" Visual Studio and extend its functionality. Extensions come in the
form of macros, add-ins, and packages.
o. Community developers as well as commercial developers can upload information about their
extensions to Visual Studio .NET 2002 through Visual Studio 2008. Users of the site can rate and review
the extensions to help assess the quality of extensions being posted. RSS feeds to notify users on
updates to the site and tagging features are also planned. [34]
Microsoft Visual C#
Microsoft Visual C#, Microsoft's implementation of the C# language, targets the .NET
Framework, along with the language services that lets the Visual Studio IDE support C# projects.
While the language services are a part of Visual Studio, the compiler is available separately as a
part of the .NET Framework. The Visual C# 2008 compiler supports version 3.0 of the C#
language specifications. Visual C# supports the Visual Studio Class designer, Forms designer, and
Data designer among others.[39]
Microsoft Visual Basic is Microsoft's implementation of the VB.NET language and associated
tools and language services. It was introduced with Visual Studio .NET (2002). Microsoft has
positioned Visual Basic for Rapid Application Development.[citation needed] Visual Basic can be used to
author both console applications as well as GUI applications. Like Visual C#, Visual Basic also
supports the Visual Studio Class designer, Forms designer, and Data designer among others. Like
C#, the VB.NET compiler is also available as a part of .NET Framework but the language services,
that let VB.NET projects be developed with Visual Studio, are available as a part of the latter.
Microsoft Visual Web Developer is used to create web sites, web applications and web services
using ASP.NET. Either C# or VB.NET languages can be used. Visual Web Developer can use the
Visual Studio Web Designer to graphically design web page layouts.
Included only with Visual Studio Team System, Team Foundation Server is intended for
collaborative software development projects and acts as the server-side backend providing
source control, data collection, reporting, and project-tracking functionality. It also includes the
Team Explorer, the client tool for TFS services, which is integrated inside Visual Studio Team
System.