VisualStudio 2005 Try-Out (1)

March 4th, 2005

Recently I started playing with VS 2005 Beta 1, it’s not the newest toy but it’s pretty reliable compared to the good old days when I played with VS 2002 PDC preview.

VS 2005 contains a big bunch of new features. So far I’ve seen huge changes in .Net 2.0, generics in C# (finally, I believed they’ve talked about this for three more years), and impressive changes in C++. Besides new keywords and new operators (ref, gcnew, ^, …), the compiler and library are fully renovated. Give your old projects/solutions a try in VC++ 8.0, you will find that almost all string functions are deprecated! Top buffer overflow creators like strcpy or strcat will now generate warnings! Not only standard library but also ATL/MFC get renovated. Microsoft finally determined to use safe operations in every aspect and resolve possible vulnerabilities from the very beginning. By the way, many string functions now return constant pointers according to new C++ standard. If you don’t use const_cast as a quick hack, you will need to modify the original design to use constant pointers. That’s a lot of work …

If you installed Visual Team Source client, you can also use PREfast. Basically its Microsoft lint, but it is fully integrated with the IDE. However, the native profiler does not come back from its disappearance in VS 2002. As a result, you still need to use Compuware DevPartner or Intel VTune to do native mode profiling. I wonder that VC++ compiler has bugs on handling anonymous typed enum, and these bugs seem to be regressed (they appear in VS2002, fixed in VS2003, now come back again …).

IMHO, the improvements of IDE are quite limited. It starts to use 32pp bitmaps and XP theme. Code snipplet and C# refactoring are finally there (it’s common to Eclipse users for years!). The feature of auto-diagraming is quite unfeasible. I am using a dual Xeon 3.2G PC with 1G RAM and ATI FireGL. It takes 10+ seconds to draw a simple class diagram where there is only one class and the class has only one method. I can imagine if I need a diagram, I’d better make an appointment with my coach in gym first.

I’ll write more when I dive deeper.

3/16 Update: the enum problem is actually not a bug 🙂 VS7 implements the standard wrong.

C++/C#, Reviews & Comments | Comments Jump to the top of this page

Comments are closed.

Chef Peon's Melange



Social Links