160 likes | 171 Views
CppDepend Benefits. b y CoderGears. www.cppdepend.com. What is CppDepend ?. CppDepend is a static analyzer based on Clang , that simplifies managing complex C/C++ code base. With CppDepend , software quality can be: Measured using Code Metrics, Visualized using Graphs and Treemaps ,
E N D
CppDependBenefits by CoderGears www.cppdepend.com
WhatisCppDepend? • CppDependis a static analyzer based onClang, that simplifies managing complex C/C++ code base. • With CppDepend, software quality can be: • Measured using Code Metrics, • Visualized using Graphs and Treemaps, • Enforced using standard and custom Rules. Bad Quality High Quality + = www.cppdepend.com
CQLinq – Code Query Language • CppDependhas innovative code query language named CQLinq, which is used to create and customize easily your own code rules. • Fromm inApplication.Methodswherem.NbLinesOfCode > 30 select m • FromninNamespacesn.Level= nullselect n • Fromtin Types wheret.IsClassselectt • 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
Interactive Guis • Exploration and Architecture Compliance categories are represented best via interactive graphs: • Dependency Graph, • Dependency Matrix, • Metrics View, • Abstracnessvs Instability. www.cppdepend.com
Dependency graph The CppDepend dependency graph panel displays the graph of dependencies between projects. www.cppdepend.com
Dependency Structure Matrix The DSM (Dependency Structure Matrix) is a compact way to represent and navigate across dependencies between components. www.cppdepend.com
MetricsView 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
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
More than 80 Code Metrics • CppDependcomes 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
Plugins CppDepend 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
Buildscomparison • In 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
Customizable reports CppDepend 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
Rich Code Searchfacilities • Contrary 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
CppDependfeatures • 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
Related links CQlinq syntax: http://www.cppdepend.com/Doc_CQLinq_Syntax.aspx CQLinq features: http://www.cppdepend.com/Doc_CQLinq_Features.aspx CQLinq performance: http://www.cppdepend.com/Doc_CQLinq_Perf.aspx Dependency graph: http://www.cppdepend.com/Doc_VS_Arch.aspx Dependency Structure Matrix: http://www.cppdepend.com/Doc_Matrix.aspx Metrics view: http://www.cppdepend.com/Doc_Treemap.aspx Code metrics: http://www.cppdepend.com/Metrics.aspx Plugins: http://www.cppdepend.com/plugins.aspx Clang diagnostics: http://www.cppdepend.com/Doc_Diagnostics.aspx Build comparison: http://www.cppdepend.com/Doc_VS_Diff.aspx Reports: http://www.cppdepend.com/Doc_CI_Report.aspx Rich code search: http://www.cppdepend.com/Doc_VS_Search.aspx www.cppdepend.com
Our contacts Our teams atCoderGearswillbe more than happy to assistyou! Support Team support@codergears.com Sales Team sales@codergears.com www.cppdepend.com