タグ

ブックマーク / zecl.hatenablog.com (2)

  • いまさら聞けない、IDisposableインターフェイス - Bug Catharsis

    マネジーリソースとアンマネージリソース.NET Frameworkで扱うリソースの種類は、大きく2つに分けることができる。 CLRが管理するマネージリソース(GCヒープ)と、CLRが管理しないアンマネージリソース。 ガベコレによってオートマチックに解放されるのがマネージリソースで、 開発者が責任を持ってマニュアル管理しなければならないのがアンマネージリソース。 マイクロソフトから提供されているクラスについては、ガベコレがマネージリソースを回収するときに、 アンマネージリソースの解放も一緒に行われるが、それは、そのようにそのクラスが実装されているからにすぎない。 自分でアンマネージリソースを扱った実装をするクラスについては、 ガベコレはあくまでマネージリソースしか回収しないので、自らの手でアンマネージリソースを 解放してあげるように実装しなければ、いつまでたってもアンマネージリソースは解放さ

    いまさら聞けない、IDisposableインターフェイス - Bug Catharsis
  • とある契約の備忘目録。契約による設計(Design by Contract)で信頼性の高いソフトウェアを構築しよう。 - Bug Catharsis

    「より堅牢で正確性の高いソフトウェアを作りたいぜ!」と願う.NETデベロッパーお待ちかねの、 契約による設計(DbC)をサポートするCode Contractsが.NET Framework4より利用できるようになります。 C#をベースとして契約による設計をサポートする「Spec#」を利用するという方法もありますが、 学習負担を軽減するためにと、マイクロソフトは言語を意識しなくても開発者が利用できるように、 Code Contractsとして.NET Frameworkで契約をサポートしてくれました。 これは、オブジェクト指向および、オブジェクト指向プログラミングが大好きな.NET開発者にとって、とても良い知らせです。 わたしも待ち望んでいたうちのひとりです。ありがとうマイクロソフト!!という気持ちでいっぱいです。 VisualStudio2010が4月12日(米国)にローンチされることが

    とある契約の備忘目録。契約による設計(Design by Contract)で信頼性の高いソフトウェアを構築しよう。 - Bug Catharsis
  • 1