NDepend

E buna si criza asta la ceva … precum si blog-ul meu pentru mine. Am primit de la Patrick Smacchia o licenta de NDepend . Si ce ar fi mai bun decit sa analizez aplicatia deja facuta?

Nu pot sa spun decit ca raportul lui, gata facut , este super impresionant (se pot defini rapoarte custom, dar ideea este ca astepti sa iasa ceva din prima)

Iata, de exemplu, imaginea cu dependentele:

image

Se vede dintr-o data ce nu e bine: SuffixDLL are legatura la PropertyGridUtils – cind ar trebui sa aiba doar SuffixWnd ( daca nu e clar, sa explic : Dll-ul de business nu ar trebui sa aiba de a face cu interfata grafica …)

Mai mult decit FxCop , are si multe detalii referitoare la calitatea codului in sine, de ex:

WARNING: The following CQL constraint is not satisfied. 1 types on 21 tested match the condition. –> Group {Unused Code / Dead Code}

// <Name>Potentially unused types</Name>
WARN IF Count > 0 IN SELECT TOP 10 TYPES WHERE
TypeCa == 0 AND     // Ca=0 -> No Afferent Coupling -> The type is not used in the context of this application.
!IsPublic AND       // Public types might be used by client applications of your assemblies.
!NameIs "Program"   // Generally, types named Program contain a Main() entry-point method and this condition avoid to consider such type as unused code.

types

Afferent coupling at type level (TypeCa)

Full Name

Settings

0

SuffixWnd.Properties.Settings

 

Intr-adevar, pusesem settings la un moment dat  – si apoi nu il folosisem.

Un tool de avut pentru orice team leader de .NET!

Site http://www.ndepend.com/, recomandare de la Scott Hanselman si un podcast , precum si demo-uri

Leave a Reply

Your email address will not be published. Required fields are marked *