Follow Slashdot stories on Twitter

 



Forgot your password?
typodupeerror
×
Programming

Inside Visual Studio 2008 127

mlimber writes "Dr Dobb's Journal has a peek at what is new in Microsoft's Visual Studio 2008. Most of the features discussed in the article are related to .NET, web development, and the IDE itself. However, Herb Sutter, Microsoft software architect and chair of the ISO C++ Standards committee, blogged about some developments on the C++ front. This includes a significantly enhanced MFC for GUI building, and the inclusion of TR1 (library extensions published by the C++ standards committee, most of which have also been incorporated into the next C++ standard)."
This discussion has been archived. No new comments can be posted.

Inside Visual Studio 2008

Comments Filter:
  • Coming? (Score:0, Informative)

    by Anonymous Coward on Friday January 11, 2008 @02:51AM (#21996038)
    It's already out....
  • Re:C99 yet? (Score:3, Informative)

    by ireallylovelinux ( 589360 ) <brianherman@noSPaM.brianjherman.com> on Friday January 11, 2008 @03:33AM (#21996186) Homepage
    Uh, GCC doesn't even support C99 why would you expect MS to be?
    http://gcc.gnu.org/c99status.html [gnu.org]
  • by Anonymous Coward on Friday January 11, 2008 @04:17AM (#21996372)
    Unfortunately for me, they removed the visual XML schema designer which was
    nice to get a quick overview of schema (for editing, nobody sane would anything except XML mode).
  • Re:C99 yet? (Score:5, Informative)

    by Anonymous Coward on Friday January 11, 2008 @04:26AM (#21996404)
    Kernel developers, system programmers and embedded developers do a lot of C, so does a lot of scientists who write in C instead of Fortran (as the restrict keyword in C99 solves the main issues with writing numerical code in C). Language runtimes tend to be written in C as well (e.g. the standard python distribution). So yes, people still write in C. Some developers (application developers for example), should naturally not write in pure C for most part (there are obviously some performance critical parts that are suitable for C).
  • Re:C99 yet? (Score:2, Informative)

    by Per Abrahamsen ( 1397 ) on Friday January 11, 2008 @04:44AM (#21996478) Homepage
    Herb Sutter wrote in his blog (which was linked in the submission) that the only thing from TR1 for C++ not implemented was C99 support. So I guess not.
  • by Saffaya ( 702234 ) on Friday January 11, 2008 @04:58AM (#21996550)
    VS 2003 does not (C++) do real time error highlighting.
    You need to use 3rd party plug-ins.
  • by josteos ( 455905 ) on Friday January 11, 2008 @05:45AM (#21996772)
    installs Visual Asisst http://www.wholetomato.com/ [wholetomato.com]

    Yep. Works great now.

    (No, I don't work there. Just been a long-time customer.)
  • by TheThiefMaster ( 992038 ) on Friday January 11, 2008 @07:25AM (#21997248)
    Have you tried MSVC++ 2005?

    The debugger is leaps and bounds ahead of the VC6 one.
    It supports parallel building of multiple projects on multicore cpus / multiple cpus (massively reducing build time).
    Built in x86-64 compiling / debugging (local machine and network) support.
    It supports link-time code generation (a major optimization improvement). The Pro version also supports profile-guided optimization.
    It supports OpenMP multithreading extensions for C++.
    Many many other improvements.

    The C++ .net extensions are optional. And, in my opinion, crap. If you want to use .net, you're better off with C#.
    Note: VC++ 2005 Express Edition (the free version) doesn't come with the Windows Platform SDK, and if you don't install it is only good for developing C++.net apps.

    The ONLY advantages to VC6 are: that it links programs against the VC6 runtime dll, which comes with most versions of Windows, right back to some 9x editions, where with VC2005 it links against the VC8 runtime dll, which most people need to install / you need to distribute it with your program / you need to static link with it, resulting in a larger .exe; and that it supports building .exes that run on Windows 95.
    Basically VC6's only advantage is that it's old.
  • by Jellybob ( 597204 ) on Friday January 11, 2008 @07:53AM (#21997348) Journal
    Take a look at the Visual Studio Express range - it's not full featured, but they are given away for free. These days the only people paying for Visual Studio are people who want the Pro features, and software shops, who can usually afford to pay for the software that drives their business anyway.
  • Microsoft Fails It (Score:3, Informative)

    by wandazulu ( 265281 ) on Friday January 11, 2008 @09:46AM (#21998052)
    (For me, anyway). I still use VC 6 for C++ work simply because it was the last example of an IDE (I'm just talking IDE) that had everything I wanted; it was clean but more importantly, *fast*. I skipped the initial .net releases because of the lack of an upgraded C++ compiler and eagerly installed VS2005 to discover that MS had turned VS into a bloated monster that was slow to open do *anything* (the performance of Intellisense greatly improved my knowledge of MFC because it was easier to memorize all the methods than wait for it to show them to me), as well as having some bizarre GUI choices (tabbed windows with the close button off to the far side of the app, instead of on the tab itself???, plus the sliding windows (yes, I can dock them, but for some reason they would sometimes "undock"). Basically it didn't "feel" right to me.

    Plus they committed, in my opinion, the unforgivable sin of trying to push their _s* functions that they said were "safe" instead of ones like strncat, strncpy, etc. The first time I compiled some code in VS2005 I freaked...what are all these warnings? Then I discover it's Microsoft being "helpful" and I was annoyed. Then I realized they wanted to make my code entirely Windows-dependent (functions that start with _ are not standard) and I was enraged. What *really* enraged me was that you have to turn these stupid warnings off per project ...if there's a way to turn it off in the options dialog I have no idea where it is. What made me scream was that they word the warning in such a way as to think the *standard* calls the functions depreciated. Herb Sutter, you should be ashamed of yourself for letting MS get away with this.


    I will give VS2008 a chance, but VS2005 with all its "standards compliant goodness" was not enough to sway me from VS6. The bloated IDE + improper warnings has utterly soured me on developing for windows; I don't want to do .net...I write server based C++ software where fast isn't fast enough. VS2005 was also not fast enough. Maybe I'll just bite the bullet and learn to write in Vim and compile at the command prompt.

  • by nxtw ( 866177 ) on Friday January 11, 2008 @10:06AM (#21998270)

    I don't know what you consider a very long time but at least for VS 2005 you're wrong. It highlights your errors after you try to run your code. That's in no way closer to "real time" error highlighting than compiling my code manually.


    Visual Studio highlights errors in Visual Basic.NET code and has done this since at least 2003.

    I'm not sure why they can't extend this functionality to C#; the languages are very similar.
  • Re:Thanks for asking (Score:3, Informative)

    by swillden ( 191260 ) <shawn-ds@willden.org> on Friday January 11, 2008 @10:19AM (#21998420) Journal

    Buddy, only God (or Stroustrup) can write good c++ code.

    Bull. I have written plenty of good C++ code, and I've read lots more, over the 16 years I've been using the language. C++ requires discipline, no doubt, but used correctly it can be both extremely productive and extremely efficient.

    If you have the guts, read this.

    Read it before, disagree with some of it, most of the rest is overstated, there are a couple of real, but avoidable, issues mentioned.

  • by Anonymous Brave Guy ( 457657 ) on Friday January 11, 2008 @11:32AM (#21999486)

    The ONLY advantages to VC6 are: [snip]

    I think you forgot a few. For one thing, VC6 is actually responsive as an IDE, and doesn't go into a trance for several minutes at the slightest provocation. For another, the online help is actually helpful: if you look up a C++ library function, for example, it tells you about the library function, and not some completely irrelevant class with a vaguely similar name in the .Net framework (after taking half a minute to fire up the help system before it does anything else). Then there's the browse toolbar, which was simple and effective, yet strangely is still missing several .Net-friendly versions later despite widespread criticism of its removal.

    Yes, at my office we also have people who prefer to use VC++ 6. Sure, there are some minor advantages in the later versions, but I think (and we've measured these things where it matters) that most of those you cited are over-rated. Many of us long for the days when we have a simple, responsive, usable IDE.

  • by Anonymous Brave Guy ( 457657 ) on Friday January 11, 2008 @01:15PM (#22001006)

    Yes, all of this stuff is C++ specific. VC++6 was a decent IDE for its time. When the first version of VS.Net came out, the architecture behind VS moved to a common core for all languages. That was fine if you were using something like C# or VB.Net, as they were new and you had all the .Net trickery to support them. However, a lot of useful stuff from VC++6, such as the browse toolbar I mentioned, couldn't be readily supported in this new multi-lingual architecture and therefore got dropped as MS effectively moved to the least common denominator.

    The problem is, while there is a lot of compensating value in more recent VS releases for those using the new .Net languages, the C++ world has been pretty much left out in the cold. In the debugger, we get modest improvements in autoexp.dat, but the managed folks get full visualizers. C++ (and C++/CLI, where applicable) have lagged behind in getting proper designers for forms and such. The help system is so horribly bloated and .Net-centric now that while MSDN used to be the poster child of good technical reference material it is now almost literally useless for a C++ developer. And yes, as mentioned before, the IDE's performance and usability absolutely sucks compared to VC++6, to the point where I have seen experienced developers confront management with some hard facts and refuse to use the "upgraded" versions until compelled to do so.

  • by JamesNK ( 967097 ) on Friday January 11, 2008 @10:27PM (#22009526) Homepage

    from n in mylist
    where (n => n < 10)
    select (n => n)
    That is just poor code. A more elegant example using LINQ would be:

    mylist.Where(n => n < 10)

    I have been using LINQ for the past couple of months and have found it fantastic.

Kleeneness is next to Godelness.

Working...