Hi,As always this entry is mirrored on my other blog.
Since 1996, when I have entered the gaming industry as a programmer, I have seen a lot of tools coming and going which helped me to improve my code and facilitate the work I had to achieve. While I had to let lose some of them because they no more fitted my needs, there are still some I have kept all the time.
Last year I signed a contract containing huge amounts of code to maintain. I'm not talking about 300.000, 400.000 or 600.000 lines of code. The code base contains not less than 2340 files with 886.000 lines of code (comment lines not included).
Since maintaining such a huge code base is really a pita, I had to find a way to handle the code navigation, the code maintenance and the refactoring. So, during several blog entries, I'm going to talk about the tools I currently use citing their pros and cons and their pricing.
Before I start, some additional information:Although I also do Java development, I focus on Visual Studio (2005/2008) since this my main development tool. For Java development I use Eclipse.
Whenever I search a tool, I try to find those which integrate into Visual Studio. This is not because I don't like other tools but because I don't want to switch forth and back between different environments. Nevertheless, for some tasks it's not possible or useful to concentrate on Visual Studio. You'll understand when I'll talk about those tools.
I mainly do C++ development. Almost all of my clients do so also. Some of them use Java and others C#. I can develop in all of them (and more since I also have experience using Delphi, FORTRAN, and Assembler...) but I excel in C++. So all tools I discuss support at least C++.
If a tool is useful to me, I spend money to buy it. While there are a lot of freeware tools out there, those which might be useful sometimes lack support in case of problems. I do not buy tools at any price. My ROI estimation must fit to some criteria: how useful is it to me? How is the support? Who else is using it? What does it achieve? Is there another tool which does almost the same for less money?
Ok... that said, here's the list of tools I'll discuss:
Visual Assist by Whole Tomato Software, Inc.
Visual Sidekick by Syntaxia Technologies
PC Lint by Gimpel Software
Visual Lint by Riverblade
UltraEdit by IDM Computer Solutions, Inc.
UltraCompare by IDM Computer Solutions, Inc.
WinMerge (Open Source)
Enterprise Architect by Sparx Systems
Team Foundation Server and Team Foundation Explorer by Microsoft
AnkhSVN (Open Source)
TortoiseSVN (Open Source)
This is already quite a list of tools to discuss. Tomorrow I'll start with Visual Assist...