How to Get Set Up and Running with NDepend

Transcription

1 Hw t Get Set Up and Running with NDepend Whether yu have purchased r dwnladed the trial f NDepend, we thank yu fr yur invlvement and interest in ur prduct. Here we have cmpiled a quick "Getting Started" guide t help yu get up and running with NDepend as quickly as pssible. While we have tried t cllect the basics in this dcument, we urge yu t experiment and explre NDepend n yur wn cde bases. There are a tn f features and pssibilities, many f which are ut f the scpe f this dcument. NDepend has been in develpment fr ver 8 years, and with every versin we take int accunt user feedback and requests. Fr any additinal help, reach ut t us at g t ur User Vice t leave a suggestin, r reach ut t us n Table f Cntents Installing the NDepend Extensin fr Visual Studi... 2 Analyzing a Visual Studi Slutin... 3 Analyzing.NET applicatins using Visual NDepend... 5 Using CQLinq with NDepend... 6 Using NDepend fr Reprts... 7 NDepend's Dependency Matrix... 9 What des the NDepend reprt tell me abut my cde?

5 Analyzing.NET applicatins using Visual NDepend 1. Start VisualNDepend.exe 2. Select ne f the ptins: Analyze VS slutins and VS prjects Analyze.NET assemblies in flder Analyze a set f.net assemblies Click "OK". It will trigger the analysis f yur assemblies and surce cde by NDepend.Cnsle.exe. This analysis will take a few secnds t a few minutes depending n the size f the assemblies. Once finished, the result is displayed in the VisualNDepend.exe UI. 5

8 In additin, the reprts will give a summary f all the main rules vilatins. T custmize which vilatins yu want included in the reprt, yu can check r uncheck the bx next t each ne as well as chse hw the vilatin will be displayed in the reprt. Yu can als set which rules are t be cnsidered critical. Nte: It is recmmended t uncheck the Type Metrics and Type Dependencies when generating reprts n cde bases cntaining mre than a thusand types. This will cause the generated reprt t be very large. It is recmmended that yu use the Interactive UI t brwse metrics and dependencies instead. Here is what the cde rule vilatin part f the reprt lks like: Yu can clearly see the rules n the left, alng with hw many vilatins were fund (in yellw and red). Clicking n a cde rule n the left, gives yu additinal infrmatin abut the vilatins in the infrmatin windw n the right. 8

9 NDepend's Dependency Matrix The DSM (Dependency Structure Matrix) allws users t quickly get a brad verview f the dependencies and cuplings that exists within their cde base and displays structural patterns at a glance. It is different frm a graph since we fund that a simple dependency graph des nt scale well with larger assemblies f cde. Graphs are very gd at displaying infrmatin abut smaller cde bases but get cnfusing the bigger the base is. The DSM is a grid f clred cells with numbers inside f them. Each clr, blue, green, and black, mean a different thing and are defined via a cntext sensitive help system when hvered ver with yur muse cursr. If the cell has a number, this is the number f cuplings between the bjects in the same rw and clumn. By clicking n an cell, yu will see a dependency graph f that bject. 9

10 What des the NDepend reprt tell me abut my cde? Applicatin Metric: This sectin gives yu an idea f the tplgy f yur applicatin. Assembly Metric: This sectin gives yu an idea f the size f each assembly within yur applicatin in terms f #IL instructins and ther metrics. VisualNDepend View: This sectin illustrates the size f yur assemblies, namespaces, types and methds in terms f #IL instructins. Yu can brwse this view dynamically by clicking the Launch Visual NDepend n this Prject icn in the NDepend Prject UI. Assembly Abstractness vs. Instability: This sectin illustrates the Abstractness/Instability principle explained in the assemblies metrics sectin. Assembly Dependencies: This sectin shws all the dependencies between the assemblies f yur applicatin in a table. Assembly Dependency Diagram: This sectin shws all the dependencies between the assemblies f yur applicatin in a diagram. Assembly Build Order: This sectin gives yu ne f the pssible build rders fr yur assemblies. If a cycle exists in yur assemblies' dependencies graph, this sectin will reprt it. NDepend Infrmatin and Warnings: This sectins gives yu feedback n yur cde: It warns yu when an assembly depends n a less stable assembly than itself. It warns yu when the visibility f a type r f a member is nt ptimal (in the cntext f the analyzed applicatin). It warns yu when a type r a member is nt used (in the cntext f the analyzed applicatin). CQLinq Queries and Rules: This sectin reprts default CQLinq rules which have been vilated. Mre abut CQLinq here. Type Metrics: This sectin recaps the type metrics in a table. A link t the dcumentatin is prvided fr each metric. Further Infrmatin Can be Fund On Our Website 10

Name: Year 8 Histry Prject 3: D The Cmmnwealth Games Still Matter In The 21 st Century? Mdule: Date Set: Deadline: Descriptin f the task: The prject is split int three separate parts: The prject is split

What Des HaD t Py D? HaD t Py takes the utput file fr a HEC-RAS simulatin and creates plts which can quickly be viewed spatially fr calibratin r validatin. The script is available nline at https://github.cm/latmkvic/hadt-py.

Cmpleting the NCI CIRB Annual Principal Investigatr Wrksheet Abut Lcal Cntext and the Study-Specific Wrksheet Abut Lcal Cntext at the University f Iwa All investigatrs cnducting research with the Natinal

Oxfam Educatin www.xfam.rg.uk/educatin UNIT 2: mapping bananas Age range: 7-11 years Outline Learners will investigate sme f the cuntries where the bananas we eat in the UK are grwn. They will first lcate

Meaningful Use Radmap Stage 1-2011 Editin Eligible Hspitals CPSI is dedicated t making yur transitin t Meaningful Use as seamless as pssible. Therefre, we have cme up with a radmap t assist yu in implementing

Discussin Directr Yur jb is t invlve thers in cnversatin abut the text by getting them t think and talk abut the BIG IDEAS in the chapter/ sectin they have just read. Cmpse 5 questins that yu want t discuss

Finding the right 90 peple in 90 days and what t d with them: Wh can yu give the 3 packets (with instructins) t? Current Preferred Custmers nt currently n the Daily Essentials Packets. Friends and Family

NAU Mdel Observatin Prtcl The mdel prtcl was develped with supprt and expertise frm the Natinal Institute fr Excellence in Teaching (NIET) and is based in great part n NIET s extensive experience cnducting

INSTRUCTIONS FOR USE ZINBRYTA (zin-bry-tuh) (daclizumab) Injectin, fr Subcutaneus Use Single-Dse Prefilled Syringe 150 mg Read this Instructins fr Use befre yu start using ZINBRYTA and each time yu get

GUIDANCE DOCUMENT FOR ENROLLING SUBJECTS WHO DO NOT SPEAK ENGLISH Aurra Health Care s Research Subject Prtectin Prgram (RSPP) This guidance dcument will utline the prper prcedures fr btaining and dcumenting

Wh is eligible fr LifeCare? What services are available? LifeCare is an emplyer prvided wrk/life benefit frm The University f Texas at Austin available t all benefits eligible emplyees and their husehld

Cmpleting the NPA nline Patient Safety Incident Reprt frm: 2016 The infrmatin cntained within this dcument is in line with the current Data Prtectin Act (DPA) requirements. This infrmatin may be subject

HIS Registry f Ministry Resurces Date: 2006-10-11 Status: Abstract: Editr: Changes since previus versin: Adpted Registry This registry is adpted by the HIS Stewards and ready fr use by members f the HIS

Sessin 5: Is FOOD fair? Age range: 7-11 years Outline Learners will play a simulatin game Can yu beat the system?, t develp their understanding f the glbal fd system and its winners and lsers. They will

Aeries Student Infrmatin System CALPADS End f Year Submissins May 4, 2012 The CALPADS End f Year extracts can be created frm the Create CALPADS Extract frm and can nly be accessed in the District database.

Percutaneus Nephrlithtmy (PCNL) What is a percutaneus nephrlithtmy? is the mst effective f the cmmnly perfrmed prcedures fr kidney stnes. It is the best prcedure fr large and cmplex stnes. T perfrm this