いくつかの C# クラスをリファクタリングしているときに、IDisposable を実装するクラスに出くわしました。
何も考えずに、IDisposable インターフェイスを実装するクラスごとに部分クラス ファイルを作成しました。
例) Stamper.cs -> Stamper.cs + Stamper.Dispose.cs の場合、Stamper.csには実際のスタンピング ロジックが含まれ、 Stamper.Dispose.csには破棄ロジックが含まれます。
// Stamper.cs
public partial class Stamper
{
// actual logic
}
// Stamper.Dispose.cs
public partial class Stamper: IDisposable
{
// Implement IDisposable
}
コードを見てみると、Stamper.cs はかなりすっきりして読みやすくなっています (約 50 行は単にクリーンアップの破棄コードであった 100 行ではなく、約 52 行になりました)。
私はこれで行き過ぎですか?
*EDIT : ご意見をお寄せいただきありがとうございます。2 つのファイルを 1 つにまとめることにしました。私が直面した問題は、実際のロジックを更新した後に IDisposable 実装を更新するのを実際に忘れていたことです。
さらに、ソース コード内のメソッド間を移動するのにそれほど問題はありませんでした。最初の理由は、私の特定のケースでは 1 つのファイル ソリューションに固執するのに十分な理由のようです。