Diff
Diff(差分比較)
テキスト、コード、データの2つのバージョン間の具体的な差異を特定する比較操作で、何が追加、削除、変更されたかを正確に表示します。
技術的詳細
古典的なdiffアルゴリズム(Hunt-McIlroy、後にMyers)は最長共通部分列(LCS)を計算し、差異を最小限の編集スクリプトとして表示します。出力フォーマットにはunified diff(+/-行によるコンテキスト表示、Gitで使用)、サイドバイサイド、より細かい粒度のための単語レベルや文字レベルのdiffがあります。三方向diffはベースバージョンを2つの変更バージョンと比較し、自動マージを可能にします。Webツールではdiff-match-patchやjsdiffなどのライブラリが、カスタマイズ可能な粒度でクライアントサイドのテキスト比較を実行します。
例
```javascript
// Diff: file processing example
const file = document.getElementById('fileInput').files[0];
const reader = new FileReader();
reader.onload = (e) => {
const data = e.target.result;
console.log(`Loaded: ${file.name} (${file.size} bytes)`);
};
reader.readAsArrayBuffer(file);
```