Beta

Slashdot: News for Nerds

×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

Visual Studio Hacks

timothy posted more than 8 years ago | from the invisible-studio-is-less-visual dept.

Microsoft 437

Jim Holmes writes "Microsoft's Visual Studio is an elephant of an IDE. It's got tremendous power and adaptability, but it's difficult to dig through all the less-than-helpful documentation. It's also very tough to figure out which of the many available add-on tools are worthwhile to add. Visual Studio Hacks by James Avery is a terrific reference for helping get the most out of Visual Studio." Read on for the rest of Holmes' review.

Disclaimer: James is a friend who's helped me with starting a developers group, and I'm also working on an open source project with him. The possibility exists that I may work on a paying project with him at some time in the future; however, I haven't had any financial dealings with him so far. (Other than I still owe him a beer for coming to speak at one of our group's meetings.) For what it's worth, I spent my own money to buy this book from Amazon. End Disclaimer.

Avery's book is great both for new users of Visual Studio as well as the more experienced developer. Also, readers won't have to worry about buying a book which will be outdated when Microsoft releases its next version of Visual Studio in November. Tips and tricks are included for Visual Studio versions 2002, 2003, and 2005.

VS Hacks spreads 100 "hacks" across 13 sensibly delineated chapters. Each hack is clearly marked with its number in a blue box at the upper, outer corner of each page. Hacks are also marked with a thermometer icon representing the hack's relative complexity. One of my few complaints about the book is that the moderate and expert icons look too similar - but frankly I ignore these icons anyway, so the criticism's most likely wasted.

The introductory chapters on projects and solutions, navigation, and editor usage aren't introductory in skill level. Avery covers these topics in great depth, diving down to some useful, but less-than-obvious settings in VS's environment. Examples of this would include Hack #2: Master Assembly and Project References, where Avery shows how to add additional assemblies to the Add Reference dialog's list of .NET assemblies. This is a timesaver if you've got custom libraries you make frequent use of; adding the assemblies to the default list saves having to use the Browse button to search for the files every time you need to add them.

Some of the most uninteresting drudgework in development involves writing code for basic software elements such as business entities or data access layers. It's repetitive, it's template-like material, and it's boring. Documenting such work is every bit as tedious.

Hack #50 covers using CodeSmith to generate code via templates. Other hacks detail tying UML into the development process. Hack #81 covers using Visio for Enterprise Architects to generate code from UML diagrams. Hack #82 covers the opposite of that process: generating class diagrams via Visio's reverse engineering support. (UML's capable of much, much more than the simple drudgework of business entities or data access layers, and these hacks shouldn't be confused with anything more than a cursory introduction of how to tie UML via Visio into Visual Studio.)

One of the most useful sections is Chapter 5: "Debugging." This chapter focuses on getting the most out of Visual Studio's debugger capabilities. These hacks are critical helpers to good developers effectively use Visual Studio's debugger.

Avery covers the basics of setting up breakpoints, diving down to various options such as setting how often to break on specific break points, or setting conditional break points. He then moves on to troubleshooting breakpoints in Hack #37, and there's also great coverage on using Visual Studio to debug scripting code inside a browser session, working with SQL server, and attaching to a running process or one that's just about to crash.

I found the best content of this book in hacks focusing on making the most of tools both inside and out of Visual Studio. Hack #79 is a great section detailing how to stress test web applications using Visual Studio Enterprise Architect's Application Center Test. This hack makes it easy for readers to understand how to get detailed stress testing on a web application. Along this same line, Hack #80 shows how to make use of the Dotfuscator tool to obfuscate .NET assemblies to protect them from modest efforts at reverse engineering. (Like Java, .NET assemblies can be disassembled, revealing all your hard work and intellectual property.)

Other gems in this same arena include tools for running and debugging unit tests inside Visual Studio (#93), testing regular expressions (#100), and using tools which automatically generate documentation based on naming conventions in the source code (#69).

The mechanics of this book are great. The Table of Contents breaks down each chapter by its individual hacks, and the index is very detailed and clear. I also like how hacks are listed on the top of each page, making it quick to find something if you know the hack's number or name and don't want to fuss with the table of contents.

My sole complaint about the book (aside from the annoying thermometer icons I've already mentioned) is that it's not always clear which add on tools work with which version of Visual Studio.

The author maintains a website specifically for this book, complete with code and tool downloads. RSS feeds are also available to monitor any updates the author makes.

This book is a critical addition to the bookshelf for any developer who spends any amount of time working in Visual Studio. You'll become much more productive by using tips in the book, and you'll find tips to help you decide which add-on tools you'll want to make use of. More importantly, you'll understand how to get the most out of Visual Studio's capabilities.


You can purchase Visual Studio Hacks from bn.com. Slashdot welcomes readers' book reviews -- to see your own review here, read the book review guidelines, then visit the submission page.

cancel ×

437 comments

Visual Studio hacks? (3, Funny)

Saeed al-Sahaf (665390) | more than 8 years ago | (#13244630)

Yes, I know a lot of Visual Studio hacks. Some say it's coders like them that are the problem with software today...

Re:Visual Studio hacks? (0)

Anonymous Coward | more than 8 years ago | (#13244641)

ice burn

Re:Visual Studio hacks? (-1, Troll)

Anonymous Coward | more than 8 years ago | (#13244746)

oss developers are no better, and you know it.

dumbass fucking foreigner. go back to your own country.

Where is Trip? (0)

Anonymous Coward | more than 8 years ago | (#13244776)

I wonder where is Trip Master Monkey? He used to the one who does those first post!!

Boring artical alert... (1)

utnow (808790) | more than 8 years ago | (#13245041)

I highly recomment that you visit [youeatit.com] and enjoy doing something more entertaining.

Awesome (0)

Anonymous Coward | more than 8 years ago | (#13244633)

this is super neat, man!

Book should read (-1, Flamebait)

boy_of_the_hash (622182) | more than 8 years ago | (#13244634)

use vim

Re:Book should read (0)

Anonymous Coward | more than 8 years ago | (#13244739)

I hope you're joking. Or maybe you're not a programmer.

Re:Book should read (0)

Anonymous Coward | more than 8 years ago | (#13244752)

Your name should read "Ludite_Beyond_Salvation".

But since you said "VIM" instead of "VI" you lose credability even with the luddites. So sad...

Re:Book should read (0)

Anonymous Coward | more than 8 years ago | (#13244989)

vim's refactoring support kicks ass

Re:Book should read (2, Funny)

Anonymous Coward | more than 8 years ago | (#13244996)

You misspelled emacs

Interesting review (4, Informative)

WillAffleckUW (858324) | more than 8 years ago | (#13244644)

although it does mention most of these hacks won't work when the new Visual Studio comes out.

But informative none the less.

Re:Interesting review (1)

teaDrunk (849107) | more than 8 years ago | (#13244774)

What I understood was that almost all tips given by authot applies, irrespective of release.
Anyway, how different can VS2005 really be ? I would like to see some brief information on that (lazy to trudge through MS docs or other dev sites ;).

Re:Interesting review (1)

WillAffleckUW (858324) | more than 8 years ago | (#13244928)

I was just saying what the review said. You'll have to disagree with the reviewer if you don't agree that most hacks may not work in the next version of Visual Studio.

I personally find that frequently, even if it's changed between versions, the hacks as mentioned are usually easily modifiable between versions, but you have to put a little thought into it and understand what has changed between versions, so they're not as easily modified, even though the basic principles may be useful.

I've got a copy of Visual Studio 2005 they gave me for a design panel on database tools at MSFT that I've yet to install, as I was waiting until I got my new laptop, but now that I have it, perhaps I'll install it and see if it is that different. Still got the shrinkwrap on it.

Visual Assist assists (0)

Anonymous Coward | more than 8 years ago | (#13244646)

yes

The "Hack" Culture (3, Interesting)

yellowbkpk (890493) | more than 8 years ago | (#13244652)

Is it just me or is a "hacking" culture growing out of the internet? People are getting fed up with the limitations put on them by business' slowness, so they push the limits of current technology to meet their needs.

Is this because people's needs are growing faster than industry's ability to provide them?

Re:The "Hack" Culture (1)

deesine (722173) | more than 8 years ago | (#13244769)


Desires != needs

Re:The "Hack" Culture (1)

ilyaaohell (866922) | more than 8 years ago | (#13244847)

It's probably more to do with the fact that you started reading Slashdot.

Re:The "Hack" Culture (1)

cybersaga (451046) | more than 8 years ago | (#13245016)

Is this because people's needs are growing faster than industry's ability to provide them?

It's probably that often, the industry doesn't know what people's needs are.

Re:The "Hack" Culture (1)

I8TheWorm (645702) | more than 8 years ago | (#13245032)

Is this because people's needs are growing faster than industry's ability to provide them?
Honestly, I can't remember a time when that wasn't true.

mandatory (0)

Anonymous Coward | more than 8 years ago | (#13244683)

can it run linux?

Ultimate Killer App (5, Informative)

PaulQuinn (171592) | more than 8 years ago | (#13244686)

MS Visual Studio is Microsoft's ultimate killer app. It's just the single best tool for software development. I use it even when developing for Linux.

Until Linux gets an IDE at least 75% as good as MSDev, top-notch large scale applications for Linux will remain few and far between.

Re:Ultimate Killer App (1)

Swamii (594522) | more than 8 years ago | (#13244729)

I agree.

I think VS 2003 was lacking in a few areas, namely refactoring tools. Fortunately VS 2005 has refactoring tools integrated into it nicely.

Re:Ultimate Killer App (3, Interesting)

ciroknight (601098) | more than 8 years ago | (#13244733)

Totally Agreed. XCode's just the same way for the Mac.

I don't think a GUI platform can call itself complete until it's got an IDE that's worthy for programming.

The only one I've seen so far for Linux that's up to par (and just barely) is KDevelop, which is entirely useless to you if you don't use Qt, like myself.
And yes, I know about a lot of the alternatives, they just all suck so bad they aren't worthy of mentioning by name. Eclipse is better than most, but is java, and slow....

Re:Ultimate Killer App (2, Insightful)

oGMo (379) | more than 8 years ago | (#13244818)

I don't think a GUI platform can call itself complete until it's got an IDE that's worthy for programming.

I disagree... I'm not a fan of your monolithic IDEs at all. My GUI is an IDE:

  • ROX-Filer [sf.net] , which is highly customizable and integrated with the shell
  • XEmacs [xemacs.org] or vim [vim.org] as your preference goes, which are two highly advanced programmable editors
  • bash, zsh, csh, or your other favorite shell
  • autotools for building

These tools combine into an "IDE" that is my desktop. I have the best-in-class for every component. Beats a jack-of-all-trades IDE that lacks in any number of regards and takes huge resources.

Re:Ultimate Killer App (5, Interesting)

swissmonkey (535779) | more than 8 years ago | (#13244873)

One hint :

Go take a look at what Visual Studio can do, you will see many features(incredibly powerful Intellisense being only one of them) that will save you time and sweat.

This message provided courtesy of a programmer who used to be big fan of XEmacs et. all until he discovered what Visual Studio(and other good IDEs) can do.

Re:Ultimate Killer App (1)

ciroknight (601098) | more than 8 years ago | (#13244942)

Yeah well none of that can equal up to what a good IDE does. Just because you like to program in the shell, doesn't help those of us who like to program in the GUI.

Autotools are a crime when it comes to building projects.. I can't tell you how many hours I've spent tweaking those scripts until I heard about Scons, and it's not even an ideal solution; A good IDE allows you to click one button and have your software project built. Wanna customize the build? Don't worry about memorizing those archaic tags, simply click a checkbox and get everything you want.

And how about inline completion? A good debugger (GDB is alright, but once again, lots of fighting with archaic shell commands that you have to memorize, ugh)? There are just so many things a graphical utility can do to help someone that would require a million seperate tools.

In finality, when I'm developing, I like to block out other distractions; running a single application that takes up the entire desktop blocks out distractions and I get my work done faster. But that's my personal preference.

Re:Ultimate Killer App (1)

EvanED (569694) | more than 8 years ago | (#13244965)

How do you get an intellisense-like feature with (X)Emacs?

For me, a good intellisenseish feature in IDE A will cause me to use it over IDE B (without such a feature) in a heartbeat *no matter what* other feature IDE B has. I don't care if it runs like a dream, has the best debugger in the world, or whatever. If A has intellisense and B doesn't, about the only feature B could add that would make me switch is a telepathic "I'll write your code for you" feature.

Re:Ultimate Killer App (2, Insightful)

oniony (228405) | more than 8 years ago | (#13244793)

Yup, let's just pretend Eclipse doesn't exist.

Re:Ultimate Killer App (0)

Anonymous Coward | more than 8 years ago | (#13244898)

Eclipse is fine for Java, but cdt isn't anywhere as good as the Visual Studio IDE for C++. Besides I can run Visual Studio on my older computers while Eclipse/cdt just chokes.

Re:Ultimate Killer App (2, Funny)

repruhsent (672799) | more than 8 years ago | (#13244931)

I agree. I love Eclipse; the best thing about it is that when I get done typing a line of code, I usually have about 10 minutes to run and grab another cup of coffee since it takes Java that long to bring the insertion point down to the next line.

A+++, recommended.

Re:Ultimate Killer App (2, Funny)

Lally Singh (3427) | more than 8 years ago | (#13245029)

Dude, you make me wish I didn't spend all of last week trolling, killing my chances of mod points this week.

Re:Ultimate Killer App (3, Insightful)

Castar (67188) | more than 8 years ago | (#13245075)

Eclipse is great for Java development, but setting it up for C++ is a pain - especially compared to VS.

Re:Ultimate Killer App (1, Interesting)

Tim C (15259) | more than 8 years ago | (#13244796)

It's just the single best tool for software development.

I have to disagree there. My experience is mainly in Java development, but I have done some VC++ and VC#. In my experience, VS.NET 2003 simply doesn't compare to the likes of JBuilder and Eclipse in terms of features (and neither of them are perfect by any means). I'm not saying that it's a *bad* IDE, but every time I use it the lack of refactoring and code inspection tools drives me batshit insane in pretty short order.

To be perfectly honest, if you truly consider it to be "the single best tool for software development", then I have to seriously question the quality of the other tools that you've used. (But then, I've done my share of using make and gdb, so I can see where you're coming from if that's your level of comparison)

Re:Ultimate Killer App (0)

Anonymous Coward | more than 8 years ago | (#13245058)

I guess you missed the part about VS2005 having refactoring and such.

Re:Ultimate Killer App (2, Funny)

NoneExpected (795890) | more than 8 years ago | (#13244803)

Visual Studio appears to actually be the killer app to my system.
I have a fairly decent system, but VS drives to incredible slowness.
When I exit I have to re-boot to get the speed back.
Does any one else have this issue?
Seriously I'd like to know.

Re:Ultimate Killer App (1)

Swamii (594522) | more than 8 years ago | (#13244927)

We have VS installed on hundreds of machines here at work, and I've never heard or seen anything like that.

Re:Ultimate Killer App (0)

Anonymous Coward | more than 8 years ago | (#13244970)

I've had that happen before, but when I installed the V-tune plug-in. Once I got rid of that it didnt bog my machine (any more than used to anyways)

Re:Ultimate Killer App (0)

Anonymous Coward | more than 8 years ago | (#13245061)

YES, it's a tremendous resource hog, horribly written without proper multi-threading, and worst of all NO STATUS INDICATOR regarding what the fuck it's doing in the background. Sometimes it will just lock up for like 20 minutes. Yes, 20 ass clenching minutes. I guess it's rebuilding tags or checking dependencies or something. I used to think it crashed, but then I'd walk away and eventually it would be done.

I've only seen this with MASSIVE projects (e.g. commercial video games with 3 platform targets, multiple configurations, dozens of huge external libraries, and thousands of code files). I'm sure it works fine for dinky little projects. But if this is supposed to be the killer dev environment, how about making it scale a bit to handle real-world sized problems? So frustrating.

Maybe this is due to slow hard drives or something else other than Microsoft's poor coding, so feel free to point the finger wherever you want. But the fact is, it locks up, gives no indication of what it's doing, and gives no ability to cancel the operation. That's inexcusable, period.

Re:Ultimate Killer App (2, Insightful)

AxemRed (755470) | more than 8 years ago | (#13244855)

World of Warcraft is my killer app. //Read into that whatever you want.

Re:Ultimate Killer App (2, Informative)

Anonymous Coward | more than 8 years ago | (#13244901)

>Until Linux gets an IDE at least 75% as good as
>MSDev, top-notch large scale applications for
>Linux will remain few and far between.

I don't understand why you were modded as insightful. I'm not trying to be sarcastic, but how precisely is MS Visual Studio a "killer app"? What makes it so impressive in your opinion that no Linux development environment compares with it, or
even as you say, "75%" as good?

For example, my development environment of choice is xemacs which I consider hands down the ultimate development environment because:
  • It runs on every platform I care to use
  • It allows me to set my choice of keyboard short cuts my way
  • It doesn't require the use of a mouse in order to any of my choice of editing features,
    such as file open, save, write, insert, split screen, find, find/replace, capitalize, uppercase, lowercase, view info pages, open shells, fontify based on type my files, etc.
  • It has an incredible array of features, not just limited to editing files, but also features such a loading/saving across networks, run various shells, allow me to save off entries in my programming diary (ChangeLog files for those not familiar), lets me choose my compilation command, etc.


Just being able to do so much without having to use the mouse is a victory in my mind. Having to use a mouse for any activity is defeat, because it requires a person to shift their visual focus from what they are supposed to be doing (editing scripts/programs) to looking for a mouse to do something and then have to move the focus back
to the editing. It's a cumulative loss of time that I find intolerable.

So could you please explain again it what way do you consider MS Visual Studio a superior product?

--Johnny

Re:Ultimate Killer App (2, Insightful)

RLiegh (247921) | more than 8 years ago | (#13244940)

Until Linux gets an IDE at least 75% as good as MSDev,
You haven't tried kdevelop or anjuta then, I assume? Not being familiar with VS (too poor, lol) I am not sure how they stack up feature wise, but I bet that both meet your "75%" criteria.

top-notch large scale applications for Linux will remain few and far between.
You mean like Open Office, Mozilla or Blender3d? We have the apps; it's the mindshare we're lacking (if we're lacking anything, which I doubt now that we have corporate sponsorship from novell and ibm).

Re:Ultimate Killer App (1)

EvanED (569694) | more than 8 years ago | (#13245035)

KDevelop doesn't have an intellisense type feature near as I can tell, and that drops it below the 75% itself IMHO.

I just tried it, and it doesn't even seem to do auto code indenting. If i type if(a==b) { , any half decent IDE should indent the following line. KDevelop didn't. (I didn't look for an option to turn this on, I'll be fair.)

Re:Ultimate Killer App (-1, Troll)

Anonymous Coward | more than 8 years ago | (#13244946)

MS Visual Studio is Microsoft's ultimate killer app. It's just the single best tool for software development. I use it even when developing for Linux.

If VS.Net is Microsoft's killer app, they might as well throw in the towel. I use both Eclipse 3.0 and VS.Net 2003 on a daily basis. VS.Net, though it is a good enough IDE, really pales in comparison to Eclipse and IDEA. Then consider the general buginess of VS.Net (every try writing an Add-In?) and immaturity of .Net as a whole, and I'm pretty much left considering VS.Net a pretty worthless product. Curse those fools who decided we use it for one of projects, and curse them for forcing the use of the visual GUI designer on us. I would be able to consider X-Develop (or even SharpDevelop) if it weren't for that visual GUI designer requirement.

I guess I can say "Linux has Eclipse", and I actually think it runs well in Linux, despite what some people have said. But its not really focused on development of "Linux" apps. But it blows VS.Net out of the water in any case.

Re:Ultimate Killer App (1)

SolusSD (680489) | more than 8 years ago | (#13244957)

i've been fairly impressed with kdevelop. have you tried it? I haven't used VS for awhile though.

Re:Ultimate Killer App (2, Insightful)

yamla (136560) | more than 8 years ago | (#13245012)

That's interesting, I approach things exactly in the opposite direction. I am developing for Windows but use Linux as my primary operating system. I use KDevelop and prefer it over Visual Studio (disclaimer: haven't tried VS2005). I just find too many things are missing from VS for my liking. Good svn integration, doxygen, good command-line tools like find and grep, sloccount, etc. etc. etc. Additionally, compiles are SLOW using Visual C++. Much much slower than in Linux when I use ccache and also distcc (though I'm not using distcc at the moment). Even without ccache and distcc, Linux still wins pretty handily because nmake STILL doesn't support parallel builds to take advantage of hyperthreading and multiple CPUs (though I'm not using those at the moment, either).

To each their own.

Re:Ultimate Killer App (0)

Anonymous Coward | more than 8 years ago | (#13245113)

nmake STILL doesn't support parallel builds to take advantage of hyperthreading and multiple CPUs

Er, are you sure about that? It's been my impression for some time that Visual Studio assigns each source file to be compiled on a different processor, at least for two- and four-way machines. I've seen large differences in compilation speed between SMP and non-SMP machines.

Re:Ultimate Killer App (1)

WillAffleckUW (858324) | more than 8 years ago | (#13245053)

MS Visual Studio is Microsoft's ultimate killer app. It's just the single best tool for software development. I use it even when developing for Linux.

ROFLMAO.

Good one.

But you do bring up a good point that we need more - and better - IDE's for Linux development.

OH MY GOD!!!!!!! (0)

Anonymous Coward | more than 8 years ago | (#13244687)

If you hack Visual Studio using Visual Studio, would you set off some kind of apocalyptic loop?

-Sj53

Adaptability of an elephant? (0, Offtopic)

Phidoux (705500) | more than 8 years ago | (#13244688)

Yeah! Right!

Visual Studio 6.0 shortcuts rock. Here are my favo (-1, Offtopic)

Anonymous Coward | more than 8 years ago | (#13244690)

Visual Studio 6.0 shortcuts rock. Here are my favorites

Code help

Ctrl+Space - Show autocomplete box (autocomplete word)
Ctrl+Shift+Space - Show parameter info for current method
Ctrl+PgUp/Ctrl+PgDn - Cycle between multiple definitions for a function
Ctrl+T - Show type information tooltip
Ctrl+Alt+T - Show autocomplete box (list members)

Navigation

Ctrl+F2 - Set bookmark
F2 - Go to next bookmark
Shift+F2 - Go to previous bookmark
Ctrl+Shift+F2 - Clear all bookmarks
Ctrl+] - Go to matching brace
Ctrl+K - Go to next matching #ifdef etc.
Ctrl+J - Go to previous matching #ifdef
Ctrl+Num* - Go to previous browse location

Formatting

Alt+F8 - Autoindent selected code
Ctrl+Shift+T - Swap current and previous word
Ctrl+Shift+8 - Toggle whitespace view
Ctrl+U - Make selection all lowercase
Ctrl+Shift+U - Make selection all UPPERCASE
Alt+MouseSelection - Column selection
Ctrl+Shift+] - Extend selection to matching brace
Ctrl+Shift+K - Extend selection to next matching #ifdef etc
Ctrl+Shift+J - Extend selction to previous matching #ifdef

One more... (0, Flamebait)

abscondment (672321) | more than 8 years ago | (#13244775)

You forgot:

Ctrl+Alt+Del - Reboot locked up Windows machine

Re:One more... (1)

akac (571059) | more than 8 years ago | (#13245018)

Yeah, because that happens...hm, never. I use both OS X and Windows XP and prefer OS X, but I have to say that I've had to hard reboot my OS X machine more than my WinXP machine and the WinXP machine being my development machine has more junk on it, while I keep my OS X machine clean of ANY non-Apple kernel extensions as well as other hacks into the system (i.e. no APE).

Crappy IDE (0, Troll)

Anonymous Coward | more than 8 years ago | (#13244699)

I despise using Visual Studio. It's bloated and buggy as hell.

Party Down... (1)

Frosty Piss (770223) | more than 8 years ago | (#13244749)

Well than, go back to your vi and party down.

Re:Crappy IDE (1)

dens (98172) | more than 8 years ago | (#13244864)

Yeah, real programmers use notepad! ;-)

We actually demo'd our web development tool to a web coder and at the end she actually said that she uses notepad instead of any tools to code. Then again, she is a consultant and charges by the hour...undoubtedly makes more $$$ than I do.

Re:Crappy IDE (1)

RLiegh (247921) | more than 8 years ago | (#13244967)

No; real programmers move the bits around telekinetically. Of course, if you're one of those windows-using dandies I suppose you can always use "copy con" ....

Re:Crappy IDE (1)

ReluctantRefactorer (223101) | more than 8 years ago | (#13245037)

Which version are you refering to?

All versions after 1.5 are pretty bloated for sure, but version 6 + service packs I have found to be very stable. About the only consistent way I found to crash it was conditional breakpoints watching memory locations. Guaranteed blow-up after a few iterations. Maybe they've fixed it in SP6?

Of course, Visual Studio 7.1 is a different kettle of fish. Very buggy and quite nasty. And they've ruined the IDE by making it too "VB friendly" and actually removing some of the useful features in 6

Windows programming is purposely vague.. (1, Insightful)

brxndxn (461473) | more than 8 years ago | (#13244700)

After my brief dabble in programming for Windows, it seemed to me that any functions worthwhile were only 'figured-out' and nondocumented by Microsoft. Maybe I'm biased, actually.. of course I am, but it seems pretty blatant that Microsoft doesn't adequately document the functions so that their crappy Windows software looks advantagious in comparison.

I'll check out the book. :P

Re:Windows programming is purposely vague.. (5, Informative)

Timesprout (579035) | more than 8 years ago | (#13244836)

Four letters. MSDN. Now show me something comparable in the OS world.

Re:Windows programming is purposely vague.. (0)

Anonymous Coward | more than 8 years ago | (#13244878)

"the internets"

Re:Windows programming is purposely vague.. (1)

sunwukong (412560) | more than 8 years ago | (#13245022)

Sourceforge [sourceforge.net] , Freshmeat [freshmeat.net] , CPAN [cpan.org] , GNU.org [gnu.org] ...

Re:Windows programming is purposely vague.. (1)

I8TheWorm (645702) | more than 8 years ago | (#13245077)

I think you missed the point of the OP.. it appears they were eluding to msdn.microsoft.com, or the MSDN help files that ship with Visual Studio.

In the past, I didn't find either to be terribly useful, but (I hate to say it) Microsoft got it right this time. With MSDN for VS.Net, I actually find what I need in the documentation, rather than having to use google.

Re:Windows programming is purposely vague.. (3, Insightful)

Timesprout (579035) | more than 8 years ago | (#13245103)

Only on /. would someone be dumb enough to cite sourceforge as a good example of a fully integrated help/documentation/examples/technical discussion/articles/books/advise system. Sourceforge is many things but if you look at 95% of the projects on it they have nothing whatsoever to do with quality code or documentation.

Re:Windows programming is purposely vague.. (1)

dutchd00d (823703) | more than 8 years ago | (#13245098)

/usr/share/man/*

Only on Slashdot (0)

Anonymous Coward | more than 8 years ago | (#13244902)

would a comment like this be modded so highly. There are comments and there are stupid comments; this happens to be one of the later. The OP's thoughts must go "sleep sleep eat linux linux linux eat linux lin linux sleep". Lets face it; really, Visual Studio is a great IDE. Nothing else comes close. But oh no, we have to throw in some unrelated MS bashing. How old are you brxdxn? 15? I bet you've never gotten beyond 'hello world'. Seriously grow up. It's a windows world for a reason.

MOD PARENT DOWN, -1 PARANOID NUTCASE (0)

Anonymous Coward | more than 8 years ago | (#13245072)

*Insert ASCII Goatse Here*

Re:Windows programming is purposely vague.. (1)

ReluctantRefactorer (223101) | more than 8 years ago | (#13245124)

You're having a laugh aren't you? Windows developers have got fantastic documentation/help/sample code (MSDN, Codeproject to name but two)

If you want vague and non-documented, you should try developing on Symbian (*shudders*)

Browse info for g++? (3, Insightful)

Catamaran (106796) | more than 8 years ago | (#13244716)

VS has some very esoteric features, but I love the integrated browse info. It's better than ctags/etags because it uses the compiler to generate the info. Has anyone here thought about doing something similar with g++/gdb? There are a couple of ways it could be done.
  • have g++ generate tags
  • have an application to build tags from gdb-enabled binaries.

Re:Browse info for g++? (0)

Anonymous Coward | more than 8 years ago | (#13244889)

Yes... Eclipse [eclipse.org]

Do not forget the C++ plug-in...

Re:Browse info for g++? (1)

yamla (136560) | more than 8 years ago | (#13245042)

I'm not quite sure what you mean by integrated browse information, but is this similar to the intellisense-like features of KDevelop?

Your number one IDE (-1, Troll)

314m678 (779815) | more than 8 years ago | (#13244725)

For making non-standards-compliant, non portable, code that wont work in 4 years.

Re:Your number one IDE (1)

EvanED (569694) | more than 8 years ago | (#13244790)

Yes, because GOD KNOWS that if you type a standards compliant program into VC++, it won't compile.

(Okay, I know that it's not actually fully compliant. For instance, until 7.1, there was no support for partial template specialization. However, there is, to my knowledge, one fully compliant compiler+library implementation, and VC++ is as good as most now.)

Re:Your number one IDE (2, Interesting)

DaHat (247651) | more than 8 years ago | (#13244817)

I tend to work on code in Visual Studio 6 at least once a month that still works just fine here, ~10 years after its release.

But even when it comes to VS2003, last time I checked C# and .NET for example were based on EMCA standards, standards which have been implemented for use under Linux, MacOS and others, all making it possible for you to build an application in VS2003 and have it run on other systems.

Portability (4, Interesting)

Anonymous Brave Guy (457657) | more than 8 years ago | (#13244882)

For making non-standards-compliant, non portable, code that wont work in 4 years.

Erm... We write highly portable libraries in C and C++ at work. They have to compile on Windows, Linux, Solaris, HP-UX, AIX, MacOS X, and often under several different toolsets on each OS.

Our whole dev team is free to develop using whatever software we find helpful. We have GUI guys and CLI guys, Windows guys and Linux guys, emacs guys and vi guys, etc.

The one thing almost everyone has in common is that they use Visual C++ as their primary IDE. That's not because we're ill-informed or haven't tried the alternatives, it's because most of us think it's the best IDE available to help us do our jobs.

Yeah, but.... (1, Funny)

Anonymous Coward | more than 8 years ago | (#13244727)

Can it be hacked to use GCC as the compiler?

Torrent Link (3, Funny)

OsirisX11 (598587) | more than 8 years ago | (#13244731)

Anyone got one?

Re:Torrent Link (1)

eight and a quarter (904629) | more than 8 years ago | (#13244870)

buy an education or evaluation of visual studio. i'm not sure if they have it, but i used vb back when i was about to graduate high school ~2000-2001. its worth a try.. it might compile code and everything, but won't do anything the few thousand dollar version does.

dont trust visual studio links in your e-mail for $20

Re:Torrent Link (1)

Pop69 (700500) | more than 8 years ago | (#13244950)

So, is this copy of Visual Studio 2005 I got free from some company called Microsoft in Germany a dud then ?

That explains a lot of things about it !!!!!

Re:Torrent Link (1)

OsirisX11 (598587) | more than 8 years ago | (#13245108)

Torrent link for the BOOK.

I'm bored.. (-1, Offtopic)

Anonymous Coward | more than 8 years ago | (#13244755)

Just goto http://www.youeatit.com/ [youeatit.com] and be happy.

Can't take him seriously (0)

Anonymous Coward | more than 8 years ago | (#13244777)

He's never heard of MSDN and is reviewing a book on VS?

jim@iterativerose.com

I only use the compiler, not IDE because (1, Informative)

Anonymous Coward | more than 8 years ago | (#13244778)

I found Source Insight. Beats anything I've tried including slickedit, multiedit, and understand for c++. And don't judge the editor by website screenshots alone, it looks like the color scheme and font styles were put together by a disgruntled employee.

The ONLY gripe about Source Insight is the lack of vim compatible keybindings. I'm hoping the next version of vim will make it even easier for IDE vendors to integrate vi functionality.

BTW, the Visual Studio 2003 IDE is different from prior versions and the 2005 version will be different yet again. Something to keep in mind before investing a lot of time learning it. But the C++ compiler is a vast improvement over VC++ 6.0.

Recommend: Best Kept Secrets in .NET (3, Informative)

eltoyoboyo (750015) | more than 8 years ago | (#13244780)

I highly recommend

Best Kept Secrets in .NET
by Deborah Kurata

This has plenty of good tricks for visual studio:

Chapter 1 - Hidden Treasures in Visual Studio
Chapter 2 - Doing Windows Forms
Chapter 3 - Code Tricks
Chapter 4 - Much ADO
Chapter 5 - Defensive Development

Re:Recommend: Best Kept Secrets in .NET (0)

Anonymous Coward | more than 8 years ago | (#13244831)

Chapter 4 - They left out "about nothing"

Whaaat?! (1)

RazorRaiser (895600) | more than 8 years ago | (#13244787)

Adaptability? From none other than Microsoft? I call shenanigans.

Why is this relevant? (0, Troll)

winavr (793523) | more than 8 years ago | (#13244840)

Why is a book about an MS IDE relevant in the Open Source age of Eclipse [eclipse.org] ?

Re:Why is this relevant? (1)

dens (98172) | more than 8 years ago | (#13244935)

Because a percentage (yes, what percentage is highly debatable) of /. readers use it, whether they'll admit to it or not.

Re:Why is this relevant? (1)

WillAffleckUW (858324) | more than 8 years ago | (#13244964)

Why is a book about an MS IDE relevant in the Open Source age of Eclipse?

Because, contrary to those on the Dev sites, not everyone is using Eclipse yet.

So long as there is moderate marketshare, I think it's geeky enough for slashdot to post about, IMHO.

Re:Why is this relevant? (1)

hizziaips (903316) | more than 8 years ago | (#13244973)

Because......many developers (myself included) like Visual Studio and think it's better for Windows C/C++/C# development than Eclipse.

The biggest annoyance with DevStudio (4, Insightful)

DrXym (126579) | more than 8 years ago | (#13244875)

Is the the help system. I don't program Windows CE, but it's infested with stupid bloody WinCE specific help. Search for a Win32 function such as CreateWindow and often you're lead to the WinCE implementation. And the same for ATL & MFC classes. Worse is if you chose not to install the WinCE help at all since it still includes the index to the WinCE help. So double clicking on a help item prompts you to insert a CD. Filtering helps a bit but not a great deal since often you want to search anywhere, especially if your app spans Win32 and .NET for instance.

Even with this annoyance it's still better than help in XCode on the Mac. XCode 2.x is a big improvement but it's still hopeless compared to MSDE.

A second annoyance to DevStudio is the sheer mess of dockable windows. VC98 had it just about under control but since DevStudio 2002 it has become a disaster zone of tabs, splitters, pushpins, floaters and toolbars. Just trying to get all the relevant information onto the screen is hard enough. The pushpin model just works badly - either you pin a window to a frame or it annoys you by floating in and out at just the wrong point in time such as when you're mousing around.

A final irritation is that DevStudio is extremely primitive compared to a lot of Java suites. Eclipse is hopeless for visual design but it kicks DevStudio around the shop for sheer coding. Being able to hit Shift+Ctrl+R and rename all references to a class or variable everywhere in Eclipse is mindbogglingly useful. While I expect the next incarnation of DevStudio will allow you to rename a class, it's notable by its absence in the current releases. It's not like Eclipse just introduced this feature since JBuilder has had it for years.

Re:The biggest annoyance with DevStudio (1)

skraps (650379) | more than 8 years ago | (#13244963)

Alt+E+F+S. Check the boxes for "match case" and "match whole word". Not quite as accurate but it works the same for 99% of the cases.

Re:The biggest annoyance with DevStudio (1)

shird (566377) | more than 8 years ago | (#13244971)

I agree entirely with this sentiment about WinCE. You can use filters in MSDN to get rid of it, but its damn near impossible to do it properly. They tried to fix it with the lateset release of MSDN library (on disc Im talking about) by having a 'Desktop and Server OS' filter, but unfortuantly it also filters all the Web stuff and scripting etc which is annoying. Every search requires twice as much effort thanks to WinCE documentation.

Re:The biggest annoyance with DevStudio (2, Informative)

skraps (650379) | more than 8 years ago | (#13245002)

A also agree that it is annoying, but in most cases the documentation is near identical for the CE version. I just use the CE docs unless I have reason to think they are different for some particular function.

Re:The biggest annoyance with DevStudio (1)

rblum (211213) | more than 8 years ago | (#13245078)

Thank Bjarne Stroustroup for the fact that there's no refactoring support for C++.

Bascially, the grammar of C++ is such a pain to parse that only very few people manage to write a decent parser - and those guys work for the compiler vendors.

Throw in the obstacles that CPP style macros generate (there are a couple of theses on just this topic!), and the pain is not worth the gain.

Re:The biggest annoyance with DevStudio (1)

WillAffleckUW (858324) | more than 8 years ago | (#13245101)

Have to agree the Help system has a really really bad habit of bringing up useless WinCE help instead of what one is coding for - wish it would figure out from the Project that you DON'T want to code for WinCE and not bother you with extraneous carp like that.

And I also find the dockable windows do make it easy to get lost - or figure out which one disappeared.

Renaming references quickly is, admittedly, not very good, especially if you have code snippets that use them - it would be nice if it could at the very least pop up a WhatAboutThisCode window that you could use to find the other references from and make sure they comply, at the very least.

Is it all about other tools? (3, Interesting)

Anonymous Brave Guy (457657) | more than 8 years ago | (#13244934)

A book on Visual Studio hacks has a lot going for it, but the examples in the review mostly sound like discussion of add-in tools, rather than VS itself.

Many people don't take advantage of even simple things like customising autoexp.dat for debugging, and don't know about undocumented UI tweaks like displaying a marker line at column N. Many of these little touches are what makes VS better than the alternatives for a lot of jobs, and why Microsoft never makes more of them I don't understand. Are things like the two examples above covered in the book?

Tomato... (2, Informative)

xtracto (837672) | more than 8 years ago | (#13244993)

I remember when I programmed in Visual Studio there was a good add on called Visual Assist, the company is Whole Tomato [wholetomato.com] I used like 3 years ago and it was quite nice, it adds some features to the IDE that make coding easier.

Dear /.ers (-1, Troll)

Swamii (594522) | more than 8 years ago | (#13245076)

Note that this subject of this thread contains information you might find inappropriate or threatening of your worldview.

Please do not hijack this thread and turn into a political, idealogical, or religious debate.

Thank you.

Sure (1)

Skiron (735617) | more than 8 years ago | (#13245082)

Do you really wish to exit and not save 23 hours of work - this may cause problems in unsaved work?

[OK]
Load More Comments
Slashdot Account

Need an Account?

Forgot your password?

Don't worry, we never post anything without your permission.

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>
Create a Slashdot Account

Loading...