Software Development

What tools assist with your .NET development?

Tony Patton provides information about a sampling of the .NET development-related tools available. You can use these tools to assist with the various aspects of a development project from start to finish.

A client recently moved its user community to a standard desktop configuration with enhanced security to reduce the installation of non-standard applications. The development staff was agitated when confronted with the details of the migration since the organization deemed many of their applications unnecessary. The situation was resolved after countless meetings, but developers were forced to go to bat for their favorite pieces of software. We all have our favorite applications, but which ones increase productivity and make our job easier?

Must haves

.NET developers have a standard group of applications that are often necessary to handle daily development chores. While there are other development environments available, Visual Studio is the standard. Developers often have a local SQL Server instance for development and testing, and a version control application is necessary when more than one developer works on a project.

Weekly .NET tips in your inbox
TechRepublic's free .NET newsletter, delivered each Wednesday, contains useful tips and coding examples on topics such as Web services, ASP.NET, ADO.NET, and Visual Studio .NET.
Automatically sign up today!

Multiple versions of these applications are often necessary for both maintaining older code while building new applications and keeping up with technology advances. For example, I have versions 2003 and 2005 of Visual Studio, along with an older version for legacy applications. In addition, both SQL Server 2000 and 2005 is running.

Beyond these standard tools, there are a variety of applications to assist with the various tasks developers face on a daily basis. A good example is the ASP.NET Version Switcher utility that allows you to easily switch between ASP.NET versions when and if necessary. Let's take a closer look at a sampling of utilities you may use or need.

More from Microsoft

Microsoft provides a number of tools to help developers be more productive. A good example is the Application Blocks, which provide solutions to common development scenarios. You can use them to greatly reduce the coding time and reduce errors with fully tested code. The Application Blocks are available free of charge.

For those developers focused on Web development, Microsoft's Expression product line provides tools to help with the process. In addition, the popular open source NDoc documentation tool has been replaced with Microsoft's Sandcastle to ease the painful process of creating documentation. Also, you can check your code against design guidelines with the FxCop tool. You can browse MSDN for more tools. Let's turn our attention to non-Microsoft tools.

Additional tools

If you ask 10 developers to list their favorite development tools, you would probably hear 10 different answers. The following list provides a sampling of some of the more useful and popular tools available today.

  • Snippet Compiler: Developers often need to run a bit of code to see the results, and building and compiling a project is overkill in this situation. The Snippet Compiler allows you to compile small code snippets quickly and easily with support for .NET Framework 1.1 and 2.0.
  • The Regulator: Regular expressions are a powerful tool that may be used with JavaScript and Web development or in your .NET code. One problem with them is the actual building of an expression as the syntax is a bit arcane. The Regulator tool allows you to build and verify regular expressions via an easy-to-use interface.
  • NUnit: Testing is a critical aspect of every development project. The NUnit tool facilitates the creation of unit tests to test projects as they are developed.
  • NAnt: The popular NAnt tool allows you to easily create build processes for your projects. It is a great tool when working with multiple developers, but the latest version of the .NET Framework includes the powerful MSBuild tool, which provides much of the same functionality without the need of an additional install and setup.
  • CruiseControl.NET: This provides an automated integration server so that code changes are automatically incorporated into project builds. It smoothly integrates with NAnt and Visual Studio and provides monitoring tools to keep tabs on projects and builds.
  • Altova XML Suite: Simple text editors are fine for working with the occasional XML file, but larger XML-based work is simplified with XML-specific tools like the XML Suite from Altova.
  • NDepend: Examine the efficiency of an application's code with code metrics generated by the NDepend tool.
  • CodeSmith: Reclaim development time by generating common code with the CodeSmith tool.

What about you?

While a .NET developer can build applications with a simple text editor and the command-line tools available with the .NET Framework, there are a variety of tools available to help with the process. What tools do you find the most valuable in your daily development chores? Share your experiences with the .NET community by posting to the article discussion.

Miss a column?

Check out the .NET Archive, and catch up on the most recent editions of Tony Patton's column.

Tony Patton began his professional career as an application developer earning Java, VB, Lotus, and XML certifications to bolster his knowledge.

About

Tony Patton has worn many hats over his 15+ years in the IT industry while witnessing many technologies come and go. He currently focuses on .NET and Web Development while trying to grasp the many facets of supporting such technologies in a productio...

17 comments
lumikon
lumikon

It create diagrams by using reflection on .NET assemblies

colin
colin

A must-have for sites with rich UIs, Squish.NET simplifies JavaScript and CSS authoring and provides some major performance boosts to your ASP.NET application. http://www.squishmyapp.com/

Jaqui
Jaqui

and will not be until the total control is given up by the one company to an international consotium of interested parties. no single company controlled item is usefull, they can change it with no warning or reguard for outside interests. note: this is also true of FLASH, or any other proprietary system

gil
gil

I found Iron Speed Designer to be a must have tool for .NET web application projects. Its ease of use on one hand, and it's openess for customization and modifications on the other hand makes him a must have tool for me and my colleagues.

gsolomon
gsolomon

I think most valuable tool is Resharper 2.5.2. MS has a long way to go to be on par with Java IDE. At least Resharper is making developing .NET with VS2005 a little more enjoyable.

bgibilaro
bgibilaro

I know it seems obvious, but as a web developer, I have always been dissapointed that Microsoft did not incorporate a straight-forward FTP feature in Visual Studio. Even the web site publishing feature in VS 2005 just seems clunky. Thus, I could not do without Filezilla. It is as full-featured as any other FTP client, and its free! Bob Gibilaro

lcardwell
lcardwell

I'd have to chime in with Gil... for web-application development, ISD is a must-have for generating/refactoring database driven n-tier web-applications. There are other good tools out there to facilitate the process, but none as complete as this one to get from points A to Z. Combine it with Red-Gate's SQL Toolbelt, Sybase' PowerDesigner, and VS for debugging/large scale code refactoring, and it brings the term RAD back into the picture.

Oldcrow54
Oldcrow54

I go through withdrawls when I'm on a machine without it. The vendor, Whole Tomato Software, Inc., is constantly improving and adding new features. Try it, you'll like it :) www.wholetomato.com I'll echo the previous comment on Beyond Compare, I use it daily.

GaltSalt
GaltSalt

The tools that allows me to promote to the next environment and eventually production, are from two separate companies, so don't confuse them! Beyond Compare: the greatest code diff engine I've ever used in 15 years of dev. www.scootersoftware.com SQL Compare suite from Red-Gate. This is invaluable in DB schema and/or data promotion. You can't live without this. Get it now.

Jack-M
Jack-M

With Firezilla I need nothing else. It's free and works well for the specific apps i have to employ,

herlizness
herlizness

why on earth does it require the .NET Framework 1.1.4322 ...