CppDepend
首页/功能/Code Query/CQLinq:像查询数据库一样查询代码

CQLinq:像查询数据库一样查询代码

编写 LINQ 查询来探索、分析和强制代码质量

CppDepend 通过集成 Linq 革新了代码分析,可使用 LINQ 查询来查询代码库。例如,下面的 Linq 查询可识别所有超过 30 行代码的公共方法。

cqlinq 查询示例

创建新的 CppDepend 项目时,您将获得 120 条默认查询和规则,可根据您的需求轻松自定义。

编写 Linq 查询和约束很简单,既因为它采用 C# LINQ 语法,也因为 CppDepend 提供了支持以下功能的 Linq 编辑器:

  • 代码补全 / 智能感知
  • 实时编译错误描述
  • 集成工具提示文档
cqlinq 查询编辑器

此外,查询编译后会立即执行,结果清晰展示且可浏览:

cqlinq 查询结果

可以使用 Linq 编写强大而精细的查询和规则,例如:

精细的 cqlinq 查询

查询示例

可以编写(甚至生成)简短的 Linq 查询,立即获得关于代码库的答案:

代码分层是否正确?

简短的 cqlinq 查询

自上一版本以来哪些方法被重构过?

使用 linq 浏览源代码

哪些类继承自特定类?

使用 linq 浏览类

最复杂的 10 个方法是哪些?

使用 linq 浏览最复杂的方法

哪些方法给特定字段赋值?

使用 linq 浏览方法

哪些复杂方法注释不足?

使用 linq 浏览未注释的方法

代码规则

当 Linq 查询返回特定结果时,您还可以自动收到警告。这样的 Linq 代码查询实际上是一个 代码规则 例如:

我不希望用户界面层直接依赖数据库层:

当 linq 查询返回结果时收到警告

MyProject1 和 MyProject2 之外的方法不应超过 30 行代码:

方法不应超过特定代码行数(警告)

静态字段不应命名为 m_XXX(自定义命名规范):

自定义命名规范

不应删除公共方法以避免 API 破坏性变更:

不应删除公共方法以避免 API 破坏性变更

相关链接: Linq 性能.

试用 CQLinq:像查询数据库一样查询代码 使用 CppDepend

开始 14 天免费试用,畅享全部功能。无需信用卡。