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コードクエリは実際には コードルール 例:

UIレイヤーがデータベースレイヤーに直接依存しないようにしたい:

linqクエリが結果を返したときに警告

MyProject1とMyProject2以外のメソッドは30行を超えるべきでない:

メソッドは特定のコード行数を超えるべきではない(警告)

静的フィールドはm_XXXと命名すべきでない(カスタム命名規則):

カスタム命名規則

公開メソッドはAPI破壊を避けるため削除すべきでない:

公開メソッドはAPI破壊を避けるため削除すべきでない

関連リンク: Linqパフォーマンス.

試す CQLinq:コードをデータベースのようにクエリ CppDependで

全機能にアクセスできる14日間の無料トライアルを開始。クレジットカード不要。