コンストラクタでの例外はあり?なし? http://togetter.com/li/54761 私の昨日の記事が発端でなんか興味深い議論になっている模様。 以下、twitterでは文字数的に書ききれないことをだらだらと。 二段階初期化(コンストラクタとは別に初期化関数を呼んでオブジェクトの構築をするような設計)は面倒なのでC#では私は、やらないですね。それで困ったことは特に無いのでまあ問題ないんだろうとは思ってます。また、コンストラクタでオブジェクトの構築が終わっていて、そのあとはimmutable(=内部の状態が不変)であるほうがオブジェクトの性質として望ましいというのもあります。 ああ、あと巨大なresourceを扱うなら、管理用のクラス(cache sizeの上限を設けて、アクセスしたtime stampの古いresourceから自動的に解放するだとか)を作るでしょうから、try〜c