Features of Visual Studio
Applies to: Visual Studio Visual Studio for Mac
Note
This article applies to Visual Studio 2017. If you're looking for the latest Visual Studio documentation, see Visual Studio documentation. We recommend upgrading to the latest version of Visual Studio. Download it here
This article describes features for experienced developers, or developers who are already familiar with Visual Studio. For a basic introduction to Visual Studio, see the Visual Studio IDE overview.
In Visual Studio's modular installer, you choose and install the workloads you want. Workloads are groups of features that programming languages or platforms need to work. This modular strategy helps keep the Visual Studio installation footprint smaller, so it installs and updates faster.
If you haven't already installed Visual Studio, go to the Visual Studio downloads page to install it for free.
To learn more about setting up Visual Studio on your system, see Install Visual Studio.
Visual Studio has a suite of tools to easily create Microsoft Azure cloud-enabled applications. You can configure, build, debug, package, and deploy Azure apps and services directly from the Visual Studio integrated development environment (IDE). To get the Azure tools and project templates, select the Azure development workload when you install Visual Studio.
After you install the Azure development workload, the following Cloud templates for C# are available in the New Project dialog:
You can use Azure services for your apps by adding Connected Services, such as:
- Active Directory connected service, to use Azure Active Directory (Azure AD) accounts to connect to web apps
- Azure Storage connected service for blob storage, queues, and tables
- Key Vault connected service to manage secrets for web apps
The available Connected Services depend on your project type. Add a service by right-clicking the project in Solution Explorer and choosing Add > Connected Service.
For more information, see Move to the cloud With Visual Studio and Azure.
Visual Studio can help you write apps for the web. You can create web apps by using ASP.NET, Node.js, Python, JavaScript, and TypeScript. Visual Studio supports many web frameworks, such as Angular, jQuery, and Express.
ASP.NET Core and .NET Core run on Windows, Mac, and Linux operating systems. ASP.NET Core is a major update to MVC, WebAPI, and SignalR. ASP.NET Core is designed from the ground up to provide a lean and composable .NET stack for building modern cloud-based web apps and services.
For more information, see Modern web tooling.
Visual Studio can build apps and games for macOS, Linux, and Windows, and for Android, iOS, and other mobile devices. With Visual Studio, you can build:
.NET Core apps that run on Windows, macOS, and Linux.
Mobile apps for iOS, Android, and Windows in C# and F# by using Xamarin.
2D and 3D games in C# by using Visual Studio Tools for Unity.
Native C++ apps for iOS, Android, and Windows devices. Share common code in iOS, Android, and Windows libraries by using C++ for cross-platform development.
Server Explorer helps you browse and manage server instances and assets locally, remotely, and on Azure, Microsoft 365, Salesforce.com, and websites. To open Server Explorer, choose View > Server Explorer. For more information on using Server Explorer, see Add new connections.
SQL Server Object Explorer provides a view of your database objects, similar to SQL Server Management Studio. With SQL Server Object Explorer, you can do light-duty database administration and design work. Examples include editing table data, comparing schemas, and executing queries by using contextual menus.
SQL Server Data Tools (SSDT) is a powerful development environment for SQL Server, Azure SQL Database, and Azure SQL Data Warehouse. With SSDT, you can build, debug, maintain, and refactor databases. You can work with a database project, or directly with a connected database instance on- or off-premises. To get SSDT, use the Visual Studio Installer to install the Data storage and processing workload.
When you write code, you should run it and test it for bugs and performance. With Visual Studio's debugging system, you can debug code running in your local project, on a remote device, or on a device emulator. Step through code one statement at a time, and inspect variables as you go. Or set breakpoints that are only hit when a specified condition is true. You can manage debug options in the code editor itself, so you don't have to leave your code.
For more information about debugging in Visual Studio, see First look at the debugger.
To improve app performance, check out the Visual Studio profiling feature.
Visual Studio offers testing options like unit testing, Live Unit Testing, IntelliTest, and load and performance testing. Visual Studio also has advanced code analysis capabilities to find design, security, and other flaws.
Visual Studio has tools to deploy your app to users or customers through the Microsoft Store, a SharePoint site, or InstallShield or Windows Installer technologies. You can access all these options through the Visual Studio IDE. For more information, see Deploy applications, services, and components.
In Visual Studio, you can manage your source code in Git repos hosted by any provider, including GitHub. You can also browse for an Azure DevOps Server to connect to, too.
To learn more about managing Git repos in Visual Studio by using Team Explorer, see Get started with Git and Azure Repos. To learn more the Visual Studio built-in source control features, see the Git features in Visual Studio blog post.
Azure DevOps Services is a suite of cloud-based services that plan, host, automate, and deploy software and promote team collaboration. DevOps Services supports both GitHub distributed version control and Team Foundation Version Control (TFVC) centralized version control. DevOps Services provides continuous build and release (CI/CD) pipelines for code stored in version control systems. DevOps Services also supports Scrum, CMMI, and Agile development methodologies. You can use DevOps Services to manage code along with bugs and work items for your project.
Team Foundation Server (TFS) is the application lifecycle management hub for Visual Studio. It enables everyone involved with the development process to participate using a single solution. TFS is useful for managing heterogeneous teams and projects, too.
You can connect to an Azure DevOps organization or a Team Foundation Server on your network through the Visual Studio Team Explorer window. From the Team Explorer window, you can check code into or out of source control, manage work items, start builds, and access team rooms and workspaces. To open Team Explorer, use the search box, or select View > Team Explorer.
The following image shows the Team Explorer window for a solution that's hosted in Azure DevOps Services.
Azure DevOps is an application lifecycle management hub for Visual Studio. Azure DevOps enables everyone involved with the development process to participate using a single solution. Azure DevOps is also useful for managing heterogeneous teams and projects.
You can connect to an Azure DevOps organization or Azure DevOps Server on your network through the Team Explorer window in Visual Studio. From the Team Explorer window, you can check code into or out of source control, manage work items, start builds, and access team rooms and workspaces. To open Team Explorer, use the search box, or select View > Team Explorer.
You can also automate your build process to build code that developers check into version control. For example, you can build one or more projects nightly, or every time certain code is checked in. For more information, see Azure Pipelines.
If Visual Studio doesn't have the exact functionality you need, you can add it. Personalize the IDE based on your workflow and style, add support for external tools that aren't integrated with Visual Studio, and modify existing functionality to increase your productivity. For the latest version of the Visual Studio Extensibility Tools (VS SDK), see Visual Studio SDK.
You can use the .NET Compiler Platform Roslyn to write your own code analyzers and code generators. Find everything you need at Roslyn.
Find existing extensions for Visual Studio created by Microsoft developers and the Visual Studio development community.
To learn more about extending Visual Studio, see Extend Visual Studio IDE.