Visual Studio 2015 Preview contains many new features, updates to existing features and is further extended with additional releases coming out November 12th , 2014.
Below you’ll find some highlights of features across core categories:
Cross-platform mobile development
Tooling for Apache Cordova™ – Visual Studio Tools for Apache Cordova, which were previously released for Visual Studio 2013 are now built into Visual Studio 2015 Preview. With these tools you can create hybrid cross-platform mobile apps that are powered by the Apache Cordova™ framework and work on iOS, Android and Windows, while at the same time taking advantage of the powerful Visual Studio IDE features such as breakpoint debugging, IntelliSense code editors and much more.
Visual Studio Emulator for Android – Developers can now download an Emulator for Android that works with Visual Studio 2015 Preview. This new emulator, built by Microsoft is designed to be fast and reliable, easy to install and configure. It also enables developers to easily switch between different platform emulators without Hyper-V conflicts. To learn more and to download the emulator visit com download page.
Cross-platform Development using C++ – Developers can now use Visual Studio 2015 to share, reuse, build, deploy, and debug code for use in C++ cross-platform mobile projects. Developers can create projects from templates for Android Native Activity apps, or for shared code libraries that you can use on multiple platforms and in Xamarin native apps.
Code Sharing Across Projects – Sharing code is a key component to any cross-platform project, and now developers working on Universal Windows using C# can use Shared Projects to reuse their code in Xamarin native apps, or in other projects such as WPF, ASP.NET and various other project types.
Web & Cloud development
NET 5 Preview – Web developers can now use Visual Studio 2015 to create ASP.NET 5 Preview applications, which are built as a lean and composable .NET stack for building modern web applications for both cloud and on-premises servers.
Improvements to Add Connected Services – Visual Studio 2015 Preview we’ve created a new capability to simplify the process by which developers connect their apps to cloud-based services such as Azure Storage and Azure Mobile Services, or O365 and even 3rd parties such as Salesforce.
Sign-in and view resources for multiple Azure accounts – Visual Studio 2015 Preview enables you to be signed in simultaneously with multiple Azure accounts. View and manage Azure resources associated with those accounts in Server Explorer.
Environments hub in Team Explorer – Visual Studio 2015 Preview includes a new Environments hub in Team Explorer. This enables teams to manage Azure environments and share these environments with other team members. Developers can deploy applications to Azure environments from a Cloud Deployment Project, and view resources, logs, and activities related to their environments. For more information on what’s new for cloud developers please see the Azure SDK 2.5 release notes.
Debugging & Diagnostics – Visual Studio 2015 enhances the Breakpoint capabilities with a new setting windows that allows developers to specify conditions and actions for breakpoints, including improved IntelliSense support for breakpoint conditions and actions. Developers also get PerfTips, a new feature to see how long code took to execute right from the code editor. Finally, there is also new support for using Lambda Expression in the debugger windows such as Watch and Immediate.
Code Editor – Visual Studio 2015 built on top of .NET Compiler Platform (“Roslyn”) brings many new features and improvements to existing capabilities to the code editor. This includes new light bulbs for quick action access to common commands such as refactoring code, including a new enhanced preview of how the code will be effected. We’ve also added refactoring support for Visual Studio, as part of Light Bulbs enhancement.
Code Analysis & Testing – Visual Studio 2015 now supports a new enhanced live code analysis capabilities, along with code analysis extensibility to 3rd party library developers through NuGet packages. With this enhancements developer get live code, advising them of issues as they type code without having to rebuild the project. In addition when NuGet libraries are extended to provide specific code-aware guidance, the editor will also light-up those changes as if they were built-in, helping solve problems early in the development lifecycle. We’ve also added a new feature called Smart Unit Testing (formerly PEX from Microsoft Research), which will explore your .NET code to generate test data and a suite of unit tests automatically.
Visual Studio IDE – The Visual Studio 2015 IDE has been enhanced to better support high-resolution displays with new icons in locations such as command bar, tool window toolbars and many other locations. We’ve also added touch support to the code editor, which can handle touch commands and gestures such as scrolling, tapping, pinch-to-zoom, etc.
To see the full details on what’s new in Visual Studio 2015 Preview please visit release notes.
There have been seven significant releases of the .NET Framework, excluding service packs. The framework includes the compilers, runtime, and libraries. Additionally, there are other profiles such Silverlight which complicate matters.
1.0 – released in 2002
1.1 – released in 2003
2.0 – released in 2005, with a new CLR (to handle generics and nullable types) and compilers for C# 2 and VB 8.
3.0 – released in 2006, this is just 2.0 plus new libraries: Windows Presentation Foundation, Windows Communication Foundation, Workflow Foundation, and Cardspace
3.5 – released in 2007, this is 3.0 plus new libraries (primarily LINQ and some extra “base” libraries such as TimeZoneInfo) and new compilers (for C# 3 and VB 9)
4 – released in 2010, this includes a new CLR (v4), new libraries, and the DLR (Dynamic Language Runtime)
4.5 – released in 2012, this allows for WinRT development on Windows 8 as well as extra libraries – with much wider async APIs
C# language versions
There are five significant language versions:
C# 2, introducing generics, nullable types, anonymous methods, iterator blocks and some other more minor features
C# 3, introducing implicit typing, object and collection initializers, anonymous types, automatic properties, lambda expressions, extension methods, query expressions and some other minor features
C# 4, introducing dynamic typing, optional parameters, named arguments, and generic variance
C# 5, introducing asynchronous functions, caller info attributes, and a tweak to foreach iteration variable capture
For a long time, releases of Visual Studio were closely tied to framework releases. The picture has become a bit more flexible and complicated, however:
VS.NET 2002 – support for C# 1 and .NET 1.0
VS.NET 2003 – support for C# 1 and .NET 1.1
VS 2005 – support for C# 2 and .NET 2.0, and .NET 3.0 with an extension
VS 2008 – support for C# 3 and .NET 2.0, 3.0 and 3.5 (multi-targeting)
VS 2010 – support for C# 4 and .NET 2.0, 3.0, 3.5 and 4
VS 2012 – support for C# 5 and .NET 2.0 to 4.5 (including WinRT on Windows 8), and portable class libraries
That’s all the theory. Here are the practical limitations and working configurations. Note that this assumes you want to use Visual Studio – if you’re happy to use just the command line compiler, that’s a slightly different story which I’ll avoid for simplicity’s sake. (At some point I’ll return to this page to talk about C# 4 and C# 5 features, but not just now…)
You can’t use C# 2 features without at least VS 2005
You can’t use C# 3 features without VS 2008
You can’t ask VS 2005 or VS 2008 to target .NET 1.0 or 1.1 (there’s an extension for it, but I haven’t used it – expect some pain for debugging etc)
You can’t force VS 2008 to restrict you to only C# 2 features, or force VS 2005 to restrict you to C# 1 features
Each version of Visual Studio has its own project file format and will upgrade your older projects when you first load them in that version. (The differences between VS 2003 and VS 2005 were significant; the differences between VS 2005 and VS 2008 are much smaller.)
VS 2008 has special support (in project properties) for which framework version you want to target: 2.0, 3.0 or 3.5
You can use most C# 3 features when targeting .NET 2.0 or 3.0, but not quite all
You may found that there is no update on C# in VS2013. Yes, this is correct.
Last week I have a gathering with all current and ex-HK MVPs. During the dinner, we talked about what is the difference between each new version of C#. Please allow me to have a short summary of this topic into a picture. You are welcome to share this picture to your friends, your user group, your colleagues.
P.S. Noted that Microsoft has just announced that VS2013 will be coming soon, I will come back to this once it is Release or in Beta.
Since VS2005, all Developer MVPs has 3 giveaway on the VS subscription. Some MVPs were giving it to public, some MVPs were giving to friends, some MVPs were giving it to memebrs of their local community. However, this time there is no such giveaway when VS2012 launch. Why? I don’t know the reason. But I think, VS2012 which is targeting Win8 development and Microsoft should enourage developers to build apps to Microsoft Store. So I highly recommend tht MVP program could try to arrange this.
There are some compatibility with previous releases. I think the main points are,
.NET 4.5 is an in-place update of .NET 4
You can install and Use Visual Studio 11 Beta alongside Visual Studio 2010.
Also, there are some upgrade paths planned ready for Developer Preview / Beta / RC / RTM later on.
Upgrade from .NET 4.5 Developer Preview to Beta
Upgrade from .NET 4.5 Beta to Release (RTM)
Upgrade from VS11 Beta & .NET 4.5 Beta to RC
Upgrade from VS 11 RC & .NET 4.5 RC to RTM
Upgrade from VS 11 Developer Preview to Beta
Upgrade from VS 11 Beta to RTM
Because the download available now is the Beta already. So the installation are ready for you to upgrade from Beta to RC only. You may have to uninstall it and install RC. But once RC is ready and after you installed RC. You could direct upgrade from RC to RTM.