cppdepend benefits by codergears

16
CppDepend Benefits by CoderGears www.cppdepend.c om

Upload: paulina-mills

Post on 12-Jan-2016

216 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: CppDepend Benefits by CoderGears

CppDepend Benefitsby CoderGears

www.cppdepend.com

Page 2: CppDepend Benefits by CoderGears

What is CppDepend?

High QualityBad Quality

+ =

www.cppdepend.com

Page 3: CppDepend Benefits by CoderGears

CQLinq – Code Query Language

CppDepend has innovative code query language named CQLinq, which is used to create and customize easily your own code rules.

From m in Application.Methods where m.NbLinesOfCode > 30 select mFrom n in Namespaces n.Level = null select n

From t in Types where t.IsClass select t

Writing CQLinq queries and constraints is straightforward because CppDepend provides a CQLinq editor which supports:•Code completion / intellisense,•Live compile error description,•Integrated tooltip documentation.

www.cppdepend.com

Page 4: CppDepend Benefits by CoderGears

Interactive Guis

Exploration and Architecture Compliance categories are represented best via interactive graphs:

•Dependency Graph, •Dependency Matrix,•Metrics View,•Abstracness vs Instability.

www.cppdepend.com

Page 5: CppDepend Benefits by CoderGears

Dependency graph

The CppDepend dependency graph panel displays the graph of dependencies between projects.

www.cppdepend.com

Page 6: CppDepend Benefits by CoderGears

Dependency Structure Matrix

The DSM (Dependency Structure Matrix) is a compact way to represent and navigate across dependencies between components.

www.cppdepend.com

Page 7: CppDepend Benefits by CoderGears

Metrics View

In the Metric View, the code base is represented through a Treemap. Treemapping is a method for displaying tree-structured data by using nested rectangles.

www.cppdepend.com

Page 8: CppDepend Benefits by CoderGears

Abstracness vs. Instability

In any software system particularly large ones, balance is critical. In this case, a system should balance abstractness with stability in order to be "good”.

www.cppdepend.com

Page 9: CppDepend Benefits by CoderGears

More than 80 Code Metrics

CppDepend comes with more than 80 code metrics some of them are related to:

•Your code organization (the number of classes, the number of methods declared in a class...),

•Code quality (complexity, percentage of comments, number of parameters, cohesion of classes, stability of Projects...),

•The structure of code (which types are the most used, depth of inheritance...)

www.cppdepend.com

Page 10: CppDepend Benefits by CoderGears

PluginsCppDepend support out of the box the XML files from CppCheck and CPD, however you can integrate another analysis tool by providing to CppDepend an XML file with this following format:

www.cppdepend.com

Page 11: CppDepend Benefits by CoderGears

Builds comparisonIn software development, products are constantly evolving. Hence, developers and architects must pay attention to modifications in code bases. Modern source code repositories handle incremental development.

CppDepend can tell you what has been changed between 2 builds but it does more than simple text comparison. It can distinguish between:•Comment change,•Code change, •what has been added/removed •what has just been modified.

www.cppdepend.com

Page 12: CppDepend Benefits by CoderGears

Customizable reportsCppDepend can analyze source code and C/C++ Projects through CppDepend Console. Each time it analyzes a code base, CppDepend yields a report that can inform you about the status of your development.

You can customize sections shown in the report and you can even provide your own XSL sheet for full customization.

You can also build your own set of CQLinq constraints that will be checked at each analysis.

Sample Report made by CppDepend.

www.cppdepend.com

Page 13: CppDepend Benefits by CoderGears

Rich Code Search facilitiesContrary to other tools, CppDepend Code Search supports numerous criterias including Searching by: •Name, •Size, •Complexity, •Coupling, •Popularity, •Coverage, •Visibility, •Mutability, •Purity, •Change and Coverage of Changes.

www.cppdepend.com

Page 14: CppDepend Benefits by CoderGears

CppDepend features• Analysis of Application Projects, Code Source and Third-Party Projects,• Facilities to Create and Customize CppDepend Project,• Dashboard reflecting the status of the code base,• Automatic HTML Report Production through CppDepend console,• Possible Integration into the Build Process,• Warnings about the Health of the Build Process,• Plugins Integration (CppCheck, CPD),• Clang diagnostics,• Interactive UI: Dependency Graph, Dependency Matrix, Metrics

Visualization,• Build Comparison / Code Diff• Edition of custom CQLinq Queries and Rules• Support for Trend charts and Trend metrics

www.cppdepend.com

Page 15: CppDepend Benefits by CoderGears

Related linksCQlinq syntax: http://www.cppdepend.com/Doc_CQLinq_Syntax.aspxCQLinq features: http://www.cppdepend.com/Doc_CQLinq_Features.aspxCQLinq performance: http://www.cppdepend.com/Doc_CQLinq_Perf.aspxDependency graph: http://www.cppdepend.com/Doc_VS_Arch.aspxDependency Structure Matrix: http://www.cppdepend.com/Doc_Matrix.aspxMetrics view: http://www.cppdepend.com/Doc_Treemap.aspxCode metrics: http://www.cppdepend.com/Metrics.aspxPlugins: http://www.cppdepend.com/plugins.aspxClang diagnostics: http://www.cppdepend.com/Doc_Diagnostics.aspxBuild comparison: http://www.cppdepend.com/Doc_VS_Diff.aspxReports: http://www.cppdepend.com/Doc_CI_Report.aspxRich code search: http://www.cppdepend.com/Doc_VS_Search.aspx

www.cppdepend.com

Page 16: CppDepend Benefits by CoderGears

Our contactsOur teams at CoderGears will be more than happy to assist you!

Support [email protected]

Sales [email protected]

www.cppdepend.com