かぞえチャオ!技術情報のページです。
かぞえチャオ!システムデータ
拡張子個別データ←New
自動実行オプション
ラインカウント方法
ステップ比較方法
ここみチャオ!システムデータ
推奨コーディング規約
比較対象決定方法について
プリプロセッサ指定について
ステップ比較の種類について
静的解析連携機能について
集計しチャオ!の使い方
かぞえチャオ!を使うにあたって
かぞえチャオ!CSV出力フォーマット
かぞえチャオ!でコードレビュー
かぞえチャオ!Ver.1.63の新機能
技術情報は、今後どんどん増やす予定です!
-
ステップ比較方法について
-
ステップ比較には、
「知的テキスト比較システム(ITECS)」を使用しています。
人が文書を比較するときに、どのように比較するかをアルゴリズム化したものが、ITECSです。
ITECSは、
Intelligent TExt Comparison System
の略で、このテキスト比較アルゴリズムは、私が考案、開発しました。
変更前後の行先頭から、同じ行かどうかを見ていきます。
異なる行を見つけると、その行以降で、同じ行がないかを1行ずつクロスチェックしながら探します。
変更前後で同じ行を見つけたら、それ以降、同じ行がどれだけ連続しているかを見ます。
この行数が、「比較時同一行認識ライン数」以上あれば、同一行と判断します。
「比較時同一行認識ライン数」が小さい値の場合は、少しでも同じ行があれば、そこを同じ行とみなします。
同じような行がたくさんある場合は、大きめの数値を指定してください。
-
比較時同一行認識ライン数のAUTOモードについて
-
比較時同一行認識ライン数のAUTOモードでは、異なる行を見つけた後の同一行判定を自動で行います。
上記の例の場合、Ver.1.56以前のAUTOモード(Ver.1.57以降ではAUTO 1)では、下記のような比較結果になります。
Ver.1.56以前のAUTOモード(AUTO 1)では、ある程度の固まりで同じかどうかを判断するため、異なると判断された行に、同一行が多少含まれることがあります。
同じような行がたくさんあるコードの場合は、このAUTOモードを利用したほうがよいと思います。
Ver.1.57以降で追加したAUTOモード(AUTO 2)では、下記のような比較結果になります。
AUTO 2では、異なると判断された行に、同一行が含まれることがありません。
修正ステップに、同じ行を少しでも含めたくない場合は、AUTO 2モードを利用してください。
ただし、同じような行がたくさんあるコードの場合は、比較位置が大きくずれることがありますので、ご注意ください。
Ver.1.59で追加した、AUTO 3では、流用ステップ数が一番多い比較パターンを検出して、ステップ比較を行います。
AUTO 1、AUTO 2に比べて若干処理に時間がかかりますが、流用ステップが多くなるように比較を行います。
上記の例の場合、AUTO 3は、AUTO 2と同じ結果になります。
▲TOP
|