タグ

関連タグで絞り込む (2)

タグの絞り込みを解除

.NETとprogrammingに関するichiropのブックマーク (4)

  • 確実な終了処理を行うには?

    連載目次 .NET Frameworkは、ガベージ・コレクションの機能により、使用済みのメモリ領域を自動的に回収する。それが単なるメモリ領域なら、使用可能なメモリ容量に余裕がある限り、回収されずに放置されるケースがあってもそれほど問題とはならない。しかし、極めて限られた資源や、特別な特徴を持った資源は、使い終わったらすぐに解放してやらねば不都合が起きる場合がある。その1つの例は、ファイルである。ファイルを開いて読み書きすることは容易であるが、.NET Frameworkで何のオプションも指定せずにファイルを開くと排他的な共有モードになるため、それを閉じるまでそのファイルにアクセスすることができなくなる。つまり、ファイルの読み書きが終了しても閉じないで放置すると、ほかの用途で開けないという弊害が発生する。 以下はファイルを閉じないことにより不都合が生じる例である。この場合、OpenTextメ

  • Dispose メソッドの実装 - .NET

    Dispose メソッドは、主に管理対象外リソースを解放するために実装されます。 IDisposable の実装であるインスタンス メンバーを使用する場合は、Dispose 呼び出しをカスケードするのが一般的です。 Dispose を実装するのは他にも理由があります。たとえば、割り当てられたメモリを解放したり、コレクションに追加された項目を削除したり、取得されていたロックのリリースを通知したりするためです。 .NET のガベージ コレクターは、アンマネージド メモリの割り当てや解放を行いません。 破棄パターンと呼ばれる、オブジェクトを破棄するパターンによって、オブジェクトの有効期間に順番が付けられます。 dispose パターンは、IDisposable インターフェイスを実装するオブジェクトに使用されます。 このパターンは、ガベージ コレクターがアンマネージド オブジェクトを再利用できな

    Dispose メソッドの実装 - .NET
  • [C#] Enum と拡張メソッド <3 - 2008-01-24 - 当面C#と.NETな記録

    Enum と拡張メソッドって相性がいいですね。MSDN ライブラリでも取り上げられてますけど。 enum MyEnum { A, B } と定義した enum を文字列化するときに日語にしたいことがよくあって、static な関数を書いてたけど、拡張メソッドでちょっとだけきれいになりますね。 using System; class Program { static void Main() { var e = MyEnum.A; Console.WriteLine( e.ToString() ); Console.WriteLine( e.ToStringExt() ); Console.ReadKey(); } } public enum MyEnum { A, B } public static class MyEnumExt { public static string ToStri

    [C#] Enum と拡張メソッド <3 - 2008-01-24 - 当面C#と.NETな記録
    ichirop
    ichirop 2010/06/18
    Enumを拡張
  • フレームワーク デザインのガイドライン | Microsoft Docs

    このセクションでは、.NET Framework を拡張および操作するライブラリをデザインするためのガイドラインを示します。 目標は、開発に使用されるプログラミング言語に依存しない統合プログラミング モデルを提供することにより、ライブラリ デザイナーが API の一貫性と使いやすさを確保できるようにすることです。 .NET Framework を拡張するクラスやコンポーネントを開発する場合は、これらのデザイン ガイドラインに従うことをお勧めします。 一貫性のないライブラリ デザインは、開発者の生産性に悪影響を及ぼし、採用を妨げます。 ガイドラインは、Do、Consider、Avoid、Do not という言葉から始まる単純な推奨事項として編成されています。 これらのガイドラインは、クラス ライブラリ デザイナーがさまざまなソリューション間のトレードオフを理解できるようにすることを目的として

    フレームワーク デザインのガイドライン | Microsoft Docs
    ichirop
    ichirop 2010/01/13
    コーディング規約として使ってもよいか
  • 1