1 / 14

Tools of the Trade: Must-Have .NET Utilities

Tools of the Trade: Must-Have .NET Utilities. James Kovacs Leader, Application Development MTS Allstream Inc. September 28, 2005. Agenda. The Holy Trinity Source Control Code Analysis Tools Build Tools Debugging Tools Coding Tools. The Holy Trinity. NUnit ( http://www.nunit.org )

lukas
Download Presentation

Tools of the Trade: Must-Have .NET Utilities

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Tools of the Trade:Must-Have .NET Utilities James Kovacs Leader, Application Development MTS Allstream Inc. September 28, 2005

  2. Agenda • The Holy Trinity • Source Control • Code Analysis Tools • Build Tools • Debugging Tools • Coding Tools

  3. The Holy Trinity • NUnit (http://www.nunit.org) • Unit testing framework • See also: • TestDriven.NET (http://www.testdriven.net) • NAnt (http://nant.sourceforge.net) • Make without the wrinkles • See also: • NAntContrib (http://nantcontrib.sourceforge.net) • NDoc (http://ndoc.sourceforge.net) • API documentation generator • See also: • GhostDoc (http://www.roland-weigelt.de/ghostdoc) • Documentor CodeRush Add-in (http://www.paraesthesia.com/blog/comments.php?id=701_0_1_0_C)

  4. Source Control • SourceGear Vault(http://www.sourcegear.com/vault/) • VSS- or CVS-style check-ins • SQL Server DB backend • Subversion • Subversion server (http://subversion.tigris.org) • Command-line • BerkeleyDB or file system backend • TortoiseSVN (http://tortoisesvn.tigris.org) • Explorer extension • RapidSVN (http://rapidsvn.tigris.org) • Traditional VSS-style GUI • AnkhSVN (http://ankhsvn.tigris.org) • VS.NET add-in • vss2svn (http://vss2svn.tigris.org) • Perl script to convert VSS DB to SVN • FireDaemon (http://www.firedaemon.com) • Runs SVN server as a Windows Service

  5. Code Analysis Tools Static • FxCop(http://www.gotdotnet.com/team/fxcop/) • Analyzes code against a rules database including coding standards, best practices, and defects • LibCheck(http://www.microsoft.com/downloads/details.aspx?FamilyID=4B5B7F29-1939-4E5B-A780-70E887964165&displaylang=en) • Displays API differences between two assemblies • devMetrics(http://www.anticipatingminds.com/Content/Products/devMetrics/devMetrics.aspx) • Reports kloc and cyclomatic complexity

  6. Code Analysis Tools Dynamic • NCover (http://www.ncover.org/) • Analyzes code coverage • NProf(http://nprof.sourceforge.net) • Profiles application performance • CLR Profiler(http://www.microsoft.com/downloads/details.aspx?FamilyId=86CE6052-D7F4-4AEB-9B7A-94635BEEBDDA&displaylang=en) • Profiles allocations and garbage collections

  7. Build Tools • CruiseControl .NET(http://confluence.public.thoughtworks.org/display/CCNET/) • Continuous integration server • Builds done through NAnt, DevEnv, MSBuild, or custom • Runs unit testing (NUnit), coverage (NCover) and/or code analysis (FxCop) on builds (optional) • Reports build and/or test failures via email • Dashboard (ASP.NET app) shows current and past build status

  8. Debugging Tools • Lutz Roeder’s Reflector(http://www.aisto.com/roeder/dotnet/) • Reverse engineers MSIL into C#, VB.NET, or Delphi • See also: • FileDisassembler Add-in (http://www.denisbauer.com/NETTools/FileDisassembler.aspx) • Reflector Diff Add-in (http://www.codingsanity.com/diff.htm)

  9. Debugging Tools • ClrSpy(http://www.gotdotnet.com/Community/UserSamples/Details.aspx?SampleGuid=c7b955c7-231a-406c-9fa5-ad09ef3bb37f) • Exposes Customer Debug Probes (CDP) for diagnosing problems with COM Interop and P/Invoke • Fiddler(http://www.fiddlertool.com) • HTTP debugging proxy, which logs all HTTP traffic between your browser and the network • Allows you to “fiddle” and replay requests

  10. Debugging Tools • XmlSerializerPreCompiler(http://www.sellsbrothers.com/tools/#XmlSerializerPreCompiler) • Fantastic tool for debugging mysterious XmlSerializer exceptions • Everything by SysInterals.com!(http://www.sysinternals.com) • Tools for monitoring disk, files, handles, registry, processes, and more

  11. Coding Tools • RegexDesigner.NET(http://www.sellsbrothers.com/tools/#regexd) • Runs regular expressions using System.Text.RegularExpressions • Regions Add-in(http://www.codeproject.com/dotnet/RegionsAddIn.asp) • Moves code into and between regions

  12. Coding Tools • pinvoke.net Add-in(http://www.gotdotnet.com/Community/UserSamples/Details.aspx?SampleGuid=75122f62-5459-4364-b9ba-7b5e6a4754fe) • Adds P/Invoke signatures • VSCmdShell Add-in(http://www.gotdotnet.com/Community/Workspaces/Workspace.aspx?id=3751cc72-1345-4872-96a1-99c9d64e7c2d) • VS.NET Command prompt hosted inside VS.NET

  13. Staying in the Loop <plug type=“shameless”> • Blogs • http://www.jameskovacs.com/blog/ • Blog Readers • OmeaReader (http://www.jetbrains.com/omea/reader/) • SharpReader (http://www.sharpreader.net/) </plug>

  14. Questions

More Related