tools of the trade: must-have .net utilities

15
TOOLS OF THE TRADE: MUST-HAVE .NET UTILITIES James Kovacs JamesKovacs.com [email protected] January 27, 2007

Upload: imelda

Post on 04-Feb-2016

59 views

Category:

Documents


0 download

DESCRIPTION

James Kovacs JamesKovacs.com [email protected] January 27, 2007. Tools of the Trade: Must-Have .NET Utilities. Agenda. The Holy Trinity Source Control Virtualization Code Analysis Tools Build Tools Debugging Tools Coding Tools. The Holy Trinity. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Tools of the Trade: Must-Have .NET Utilities

TOOLS OF THE TRADE:MUST-HAVE .NET UTILITIES

James [email protected]

January 27, 2007

Page 2: Tools of the Trade: Must-Have .NET Utilities

AGENDA

The Holy Trinity Source Control Virtualization Code Analysis Tools Build Tools Debugging Tools Coding Tools

Page 3: Tools of the Trade: Must-Have .NET Utilities

THE HOLY TRINITY

NUnit (http://www.nunit.org) Unit testing framework See also:

TestDriven.NET (http://www.testdriven.net) JetBrains UnitRun (http://www.jetbrains.com/unitrun/)

NAnt (http://nant.sourceforge.net) Make without the wrinkles See also:

NAntContrib (http://nantcontrib.sourceforge.net) MSBuild (VS 2005)

NDoc (http://ndoc.sourceforge.net) API documentation generator for .NET Framework v1.X See also:

Sandcastle (http://www.sandcastledocs.com) Sandcastle Builder (

http://www.codeproject.com/useritems/SandcastleBuilder.asp) GhostDoc (http://www.roland-weigelt.de/ghostdoc)

Page 4: Tools of the Trade: Must-Have .NET Utilities

SOURCE CONTROL

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) Visual Studio add-in

vss2svn (http://vss2svn.tigris.org) Perl script to convert VSS DB to SVN

SourceGear Vault (http://www.sourcegear.com/vault/) VSS- or CVS-style check-ins SQL Server DB backend

Team Foundation Server (TFS) SQL Server 2005 backend Includes project portal, work item tracking, process enforcement,

build server, reports, etc. Requires Visual Studio Team System (VSTS)

Page 5: Tools of the Trade: Must-Have .NET Utilities

VIRTUALIZATION

Virtual PC 2007 (http://www.microsoft.com/windows/virtualpc) Free x64 Host, but not Guest

VMWare Workstation 6.0 (http://www.vmware.com/products/ws/) USB support beyond mice and keyboards Multiple snapshots x64 Host/Guest Multi-monitor in Guest Headless VMs Many more features

Page 6: Tools of the Trade: Must-Have .NET Utilities

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

Page 7: Tools of the Trade: Must-Have .NET Utilities

CODE ANALYSIS TOOLS

Dynamic NCover (http://www.ncover.org/)

Analyzes code coverage NProf (http://nprof.sourceforge.net) OR JetBrains dotTrace Profiler (

http://www.jetbrains.com/profiler/) Profiles application performance

CLR Profiler (http://www.microsoft.com/downloads/details.aspx?familyid=A362781C-3870-43BE-8926-862B40AA0CD0&displaylang=en or http://tinyurl.com/ozsgr) Profiles allocations and garbage collections

Page 8: Tools of the Trade: Must-Have .NET Utilities

BUILD TOOLS

CruiseControl .NET (http://ccnet.thoughtworks.com/) Continuous integration server Builds via NAnt, MSBuild, DevEnv, 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

Page 9: Tools of the Trade: Must-Have .NET Utilities

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)

Page 10: Tools of the Trade: Must-Have .NET Utilities

DEBUGGING TOOLS

ClrSpy (http://www.gotdotnet.com/Community/UserSamples/Details.aspx?SampleGuid=c7b955c7-231a-406c-9fa5-ad09ef3bb37f or http://tinyurl.com/2vvms) 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

Page 11: Tools of the Trade: Must-Have .NET Utilities

DEBUGGING TOOLS

XmlSerializerPreCompiler (http://www.sellsbrothers.com/tools/#XmlSerializerPreCompiler or http://tinyurl.com/mqm1) 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

Page 12: Tools of the Trade: Must-Have .NET Utilities

CODING TOOLS

Notepad2 (http://www.flos-freeware.ch/notepad2.html)

Notepad++ (http://notepad-plus.sourceforge.net/) Both excellent Notepad

replacements CopySourceAsHtml (

http://www.jtleigh.com/people/colin/software/CopySourceAsHtml/ or http://tinyurl.com/s7mea) Visual Studio Add-in for copying

source code as HTML

Page 13: Tools of the Trade: Must-Have .NET Utilities

CODING TOOLS

Database Publishing Wizard (http://www.codeplex.com/sqlhost) Scripts a SQL Server database, including

data RegexDesigner.NET (

http://www.sellsbrothers.com/tools/#regexd) Runs regular expressions using

System.Text.RegularExpressions pinvoke.net (http://www.pinvoke.net)

Public wiki for P/Invoke signatures

Page 14: Tools of the Trade: Must-Have .NET Utilities

CODING TOOLS

CodeRush (http://www.devexpress.com/Products/NET/CodeRush/) Intuitive coding tool

Refactor Pro! (http://www.devexpress.com/Products/NET/Refactor/) Refactoring tool with awesome previews

ReSharper (http://www.jetbrains.com/resharper/) Refactoring/coding tool with excellent support for TDD

Page 15: Tools of the Trade: Must-Have .NET Utilities

QUESTIONS

JamesKovacs.com

[email protected]