Advertisement

Visual Studios 2012 has been released for 8 months now, what are your current opinions about it?

Started by April 02, 2013 07:39 AM
30 comments, last by Vortez 11 years, 7 months ago

Due to homework assignments, I've been heavily developing Android apps for a year now, and have been out of touch with Visual Studios 2012.

I thought it would be nice to have a recent discussion of how do you like the recent VS edition, now that there's an Update 2 CTP4 out in public.

What are your opinions on VS2012?

Slower than 2008, but not as slow as 2010 - the new user interface takes a bit of getting used to, but other than those little niggles, it's nod bad.

After careful deliberation, I have come to the conclusion that Nazrix is not cool. I am sorry for any inconvienience my previous mistake may have caused. We now return you to the original programming

Advertisement

It's nice, I like it. Interface can be glitchy at times but basically it's a solid step forward. The graphics development tools that are integrated are a nice start too, though they need plenty of work still.

SlimDX | Ventspace Blog | Twitter | Diverse teams make better games. I am currently hiring capable C++ engine developers in Baltimore, MD.

A silly question: I heard somewhere that with the Visual C++ 2012 Express edition you can only develop for windows8. Is it true or it's has all the features what the VS2008 Express?

A silly question: I heard somewhere that with the Visual C++ 2012 Express edition you can only develop for windows8. Is it true or it's has all the features what the VS2008 Express?

I'd be shocked if that were the case, seeing as you can run VS 2012 Express on Windows 7...

[size=2][ I was ninja'd 71 times before I stopped counting a long time ago ] [ f.k.a. MikeTacular ] [ My Blog ] [ SWFer: Gaplessly looped MP3s in your Flash games ]

I like it so far. It's a classic "The lord giveth, the lord taketh away" like any other Visual Studio release. I immediatly googled for the Registry Key TO SWITCH OFF THE ALL-CAPS MENU (god, that was annoying), and I wasted quite some time in the theme editor to make the current line stand out better, break point lines, marked lines, all that... they really wasted a lot of clear communication potential with them limiting themselves to either black or white as background color. Now that the theme is set and Visual Assist is installed again, life could be beautiful.

Except it isn't. It still leaves its whole stack of MSBuild zombie threads on occasion. Sometimes the whole UI deadlocks when switching from debugging back to editing. Intellisense has gotten faster, I admit, but it still needs 10s upwards to find a function defined one page below the cursor. The project properties are still locked in size and uncomfortable to edit, especially with multiple build configs. Edit&Continue, the one major feature that really makes my workflow fly, is in a desolated state. I even had a skype call scheduled with some guy from Microsoft who contacted me after I took the E&C survey, only for him to never show up at the scheduled date and time, and never since.

The one thing why I still think VS2012 is worth upgrading is the new C++11 features. I'm not the template master so I'm not that fixated on Variadic Templates, but range-based loops really made my life easier and std::async() is a nice thing to have, too. Just to point out two examples, I can name more if you give me some time. Still waiting for delegating constructors and default operators, though, and the uniform initializers are still unusable, even though my bug report was tagged as "fixed". Delegated constructors are there, technically, but they're implemented in the CTP compiler updates which is unusable with Edit&Continue and is a burden to deploy for all programmers. So I'm still hoping for them to actually come out with an ServicePack or whatever that incorporates all the new features.

There's a profiler integrated now, which is also a really nice thing. Hasn't been there since... VC6? Nice to have. I have yet to try the graphics debugger. An integrated PIX would be a really cool thing to have, especially because PIX keeps getting worse with every other Windows update.

----------
Gonna try that "Indie" stuff I keep hearing about. Let's start with Splatter.
Advertisement

There's a profiler integrated now, which is also a really nice thing. Hasn't been there since... VC6? Nice to have.

The profiler has always been there, it's just required the Team/Ultimate edition until now.
[size=2][ I was ninja'd 71 times before I stopped counting a long time ago ] [ f.k.a. MikeTacular ] [ My Blog ] [ SWFer: Gaplessly looped MP3s in your Flash games ]

A silly question: I heard somewhere that with the Visual C++ 2012 Express edition you can only develop for windows8. Is it true or it's has all the features what the VS2008 Express?

Partially true. The Express SKUs are all separated by platform now, rather than by language as they were in the past. There's an express SKU for Web developers, for Windows Phone developers, for Windows Store developers (Windows 8-style apps, formerly known as Metro), and for Windows Desktop developers (traditional windows desktop apps). You can, of course, download and install multiple express versions side-by-side, so just grab the one's you're interested in and you'll have all the core libraries and languages you'd want to use on each platform--even DirectX is now included in the Windows SDK directly, no more separate download.

The express SKUs are limited in other ways though, as they always have been. Certain high-end and "enterprisy" features are only found in the Professional, Premium or Ultimate SKUs, for example, the Graphics Diagnostics capabilities. But I think that the Express SKUs even support a limited amount of Team Foundation Server features (and there's a TFS Express download too), so that a small team can collaborate effectively.

The UI isn't great, but there's been more than enough value added to it in other ways to forgive that particular sin.

throw table_exception("(? ???)? ? ???");

Improvements:
The compiler produces much smarter SIMD code. The 2008 & 2010 was plain stupid. I've seen the compiler spit out "xorps xmm1, xmm1 -> movss xmm1, xmm2" to transfer a float from one register to another instead of just doing movaps (what 2012 does). The xorps is there to avoid false sharing, improving pipeline in the CPU. However that's useful when moving from memory to registers; using the xorps trick to move between registers is moronic.

Code like that in vs2008 & 2010 when using /arch:SSE2 & SIMD intrinsics was embarrassingly all over the place. Finally 2012 does something good.
Vs2008 & vs2010 horribly failed to remove dead code when using sse intrinsics, sometimes it even failed to do constant propagation properly. VS 2012 has improved a lot in that aspect.

Also, the express edition can now switch to x64 targets without doing magic. In vs2008 express edition (didn't bother finding out in 2010) you had to tweak the registry settings and stuff like that to get x64 working. Someone thought it should be a "professional" feature. In VS2012 it is available for express edition users too.

C++11 features. I didn't have the need to use them yet. But they're supported and it's a plus for whoever needs them.

Failures:
The IDE is slower than in 2008. It also uses twice the RAM. At least it's faster than VS2010. That IDE (2010) was so slow that in big projects I could even type faster than the ide could render. Even with an Intel Quad Core Extreme X9650, AMD Radeon HD 7700, 8GB RAM, and an SSD. wth!??!
Apparently, I was not alone

Compilation time, particularly linking time, takes much longer.

Intelisense is more accurate than 2008, but laggy & often unresponsive. The problem is that VS2008, while rebuilding it's ncb database, would still throw you the results from a query (i.e. go to definition) using the old database, thus it felt faster. In VS2012 it shows the goddam "Please wait..." window with a cancel button that doesn't really cancel. In other words, it's a blocking database and stalls until it hasn't finished updating. Worst part is that it starts reworking the sdb database as soon as you made a change, while ncb database waited for a couple of seconds (like 10s or so), thus using intellisense would feel faster (again, using older results, but still often accurate)
At least it's faster than VS2010 where I just had to turn it off. I could sit waiting literally minutes, often I ended up killing the process and use find in files as a better alternative.

Aesthetics: The GUI went for 'minimalistic' design I get it, but it could do a lot of work.

Neutral:
You can develop in a non-Windows 8 environment; and there's even a switch to tell the IDE to target XP OS as well. Good thing Microsoft stepped back on their decision to make everything Win 8 only.

I haven't used any kind of visual studio for a long, long time but I tried installing Visual Studio 2012 Express for Web Development today as I am interested in learning Javascript and HTML5 and I had heard it was a good environment. Unfortunately the installation died halfway through; I tried uninstalling and reinstalling but it still didn't work. Anyone had this happen to them and have a quick fix?

Anyway, I'll let you know what I think of it when I get it working.

-~-The Cow of Darkness-~-

This topic is closed to new replies.

Advertisement