C#::partial

対象性を持つ二つのクラスを実装するときにpartialを使う、という実装を見かけた。
なるほど、なるほど・・・。

partial class SaveDataReader 
{
	//ここには読み出し時の共通的な開始→終了の手順が書かれる
}
public class SaveDataWriter
{
	//ここには書き込み時の共通的な開始→終了の手順が書かれる
}

#region Xxxの読み出しと書き込み
//以下、機能ごとにまとめていく。
partial class SaveDataReader
{
    public int ReadXxx(){ ... }
}
partial class SaveDataWriter
{
    public void WriteXxx(int xxx){ ... }
}
#endregion

面白いけど使いどころは少なそうだなぁ。