http://blogs.wankuma.com/shuujin/archive/2007/02/01/60398.aspx
おいらはDisposeはNewとともにあるべきだと思っています。
C++出身者ってこともあるかもしれないけど、newしたものがdeleteするのは当たり前。
ただこれも現在流のコンテキスト重視の流れで行くとFactoryもまぁねぇってところ。
Factoryとインターフェイスでの抽象化はあまり混同しないほうがいいとおもいます。(たぶんコメントさんもわかってるとは思うけど)
それよりも、以下のヘルパをどうおもいますか。
XmlElement CreateElement(XmlDocument xd, string ElementName, string Value){
XmlElement xe = xd.CreateElement(name);
xe.Value = Value;
return xe;
}
利用する側
RootElement.Append(CreateElement(xd, "youso", "atai"));
コンテキストからみるとすごくわかりやすいと思います。でもValueがnullの場合にはエレメントを追加しないとなったときには
XmlElement AppendElement(XmlDocument xd, XmlElement parent, string ElementName, string Value){
if ( value != null ) {
XmlElement xe = xd.CreateElement(name);
xe.Value = Value;
parent.Append(xe);
}
}
利用する側
AppendElement(xd, RootElement, "youso", "atai"));
こんな感じに変化させなければいけないんです。
コンテキストを生かすといっても一筋縄ではいかない・・・
#なにもみずにイメージだけでコードしてるので間違ってても許してね。(^^