Feeds

NO MORE ALL CAPS and other pleasures of Visual Studio 14

Unpicking a packed preview that breaks down ASP.NET

Security and trust: The backbone of doing business over the internet

Review Microsoft has released a second preview of the next major release of Visual Studio.

Much of the attention has gone on Microsoft’s embrace of open source, with the Roslyn .NET code compiler. But is this isn’t necessarily the biggest change in Microsoft’s comprehensive dev suite.

There’s a radical change coming to ASP.NET and that’s reflected here.

Meanwhile, of arguably more ephemeral but certainly a contentious nature is a change to the menu. There's U-turn from Visual Studio 2012's block-capital-oriented UI, hated by many yet forced through to foist a brand-new interface on all things Microsoft in the era of Windows 8.

But wait. Before you get too excited, it’s worth remembering early previews are incomplete and intended for experimentation only. They do, however, give some clues about the direction of Microsoft’s development platform. Note that neither the appearance nor the absence of specific features is any sort of guarantee about what will be in the final release. Also, if you are looking for clues about what the next version of Windows looks like, you will not find much here.

That said, there is an intriguing blog post here from the Visual C++ team explaining that the preview compiler does not support Windows 8.x (or earlier) Store (that is, Metro) apps. That will be old stuff that will require the existing Visual Studio 2013 compiler. This limitation does not apply to .NET or HTML and JavaScript Store apps, only to native code, but raises the question of what is changing to cause this incompatibility.

From a technical perspective, the big new feature in Visual Studio 14 (not the final product name) is its use of the open source .NET compiler code-named Roslyn. Roslyn is itself implemented in the .NET languages it compiles, C# and Visual Basic, unlike the old compiler which is implemented in C++.

The question though is what difference that makes to the developer? At first glance, Visual Studio 14 looks disappointingly similar to its predecessor, and as long as code compiles correctly, why should we care?

Visual Studio 2014 CTP2

Look Ma! No web server - an ASP.NET application running self-hosted

The answer is that Roslyn makes new APIs available that should make smart editor features easier to implement, faster and more reliable. Instead of being a black box, the new compiler exposes an API covering each phase of the compiler’s work. You can access the syntax tree created by the compiler after parsing the text that forms the code, the symbols which represent the elements referenced in the syntax tree, the binding analysis which maps the code to the symbols, and the final stage where the results are output as .NET IL (Intermediate language).

If you are writing an editor, then Roslyn means that instead of writing your own code parse, or manually figuring out how to implement a feature such as “Go to definition”, which jumps to the code where a variable or function is declared, you can call compiler APIs instead. As a result of Roslyn, Visual Basic developers get refactoring support for the first time (other than via third-party plugins). Refactoring means features which improve the structure of the code without changing its output. Another new VB editor feature is the ability to spread literals across several lines without using extra quote marks or underline characters.

C# gets two new refactorings in this release, Introduce local, which lets you create a new variable to simplify convoluted code, and Inline temporary variable, which does more or less the opposite, removing a variable and replacing it with literal values.

The way refactoring works in the editor has also changed. Instead of popping up a modal dialog, you get a lightbulb icon offering a drop-down of available refactorings. You can do a Rename Variable simply by typing over highlighted text, with options available in a panel if you need them.

If you take the additional step of adding <LangVersion>experimental</LangVersion> to a project file, you can try further new language features such as the Null propagating operator (?.) that lets you write expressions like myobject?.myproperty without raising an exception if myobject is null.

Overall, the impact of Roslyn on the Visual Studio 14 CTP is not dramatic, with the focus perhaps on getting the rewritten code to work right in this first release, rather than adding a ton of new features.

Providing a secure and efficient Helpdesk

More from The Register

next story
New 'Cosmos' browser surfs the net by TXT alone
No data plan? No WiFi? No worries ... except sluggish download speed
'Windows 9' LEAK: Microsoft's playing catchup with Linux
Multiple desktops and live tiles in restored Start button star in new vids
iOS 8 release: WebGL now runs everywhere. Hurrah for 3D graphics!
HTML 5's pretty neat ... when your browser supports it
'People have forgotten just how late the first iPhone arrived ...'
Plus: 'Google's IDEALISM is an injudicious justification for inappropriate biz practices'
Mathematica hits the Web
Wolfram embraces the cloud, promies private cloud cut of its number-cruncher
Mozilla shutters Labs, tells nobody it's been dead for five months
Staffer's blog reveals all as projects languish on GitHub
SUSE Linux owner Attachmate gobbled by Micro Focus for $2.3bn
Merger will lead to mainframe and COBOL powerhouse
iOS 8 Healthkit gets a bug SO Apple KILLS it. That's real healthcare!
Not fit for purpose on day of launch, says Cupertino
prev story

Whitepapers

Secure remote control for conventional and virtual desktops
Balancing user privacy and privileged access, in accordance with compliance frameworks and legislation. Evaluating any potential remote control choice.
WIN a very cool portable ZX Spectrum
Win a one-off portable Spectrum built by legendary hardware hacker Ben Heck
Storage capacity and performance optimization at Mizuno USA
Mizuno USA turn to Tegile storage technology to solve both their SAN and backup issues.
High Performance for All
While HPC is not new, it has traditionally been seen as a specialist area – is it now geared up to meet more mainstream requirements?
The next step in data security
With recent increased privacy concerns and computers becoming more powerful, the chance of hackers being able to crack smaller-sized RSA keys increases.