ファイルの全比較とHASH値比較 (4)

はっきりしないと気持ちが悪い原因は、人間の意志が介入しなければ完全にうまくいかないプログラムしか作れないからなので、そこから考えると試行なりコスト計算なりして最適なアルゴリズムを動的に選択するような機能まで含めてしまえばいいのだと思いました。
ただ、毎回の実行で今後の実行アルゴリズムを決定するようにした場合、ファイル全体ハッシュ値での比較だとファイルの一致不一致具合の詳細が判定しづらいので、ハッシュツリーのようなものか、いくつかのブロック毎のハッシュ値で、部分的な判定ができるようにする必要があったりと結構面倒くさそうで、そこまでやる必要があるのか謎ですが、わたしの気持ちとしてはすっきりしました。
あとハッシュ値は一度計算した値をファイルのパス/更新日付でキャッシュしておけば、変更のないファイルのハッシュ値を再計算する必要がないので、ハッシュ値比較時の速度が少しはマシになると思います。utimeなんか使わないと仮定して。


もちろん作る気は全くありません。