タグ

.NETとLaterに関するatsukanrockのブックマーク (9)

  • マイクロソフトプロダクト|BIPROGY株式会社

    企業情報 企業情報トップ BIPROGYについて トップメッセージ 会社概要 Purpose,Principles Vision2030・経営方針(2024-2026) コーポレートブランド グループ会社 拠点所在地 組織図 役員一覧 企業理念 企業行動憲章 役職員行動規範 PDF 調達・購買に関する指針等について BIPROGYグループのAI倫理指針 PDF BIPROGYグループの歴史 BIPROGYの企業活動 サステナビリティ 広告宣伝活動 イベント/セミナー 出版物 デジタルメディア BIPROGY TERASU 別ウィンドウで開く BIPROGYバドミントンチーム 東京ディズニーランド「エレクトリカルパレード・ドリームライツ」 東京ディズニーシー「フォートレス・エクスプロレーション」 BIPROGYの研究活動 BIPROGY総合技術研究所 Technology Foresight

    マイクロソフトプロダクト|BIPROGY株式会社
  • 拡張メソッドのターゲットにIList(T)とIEnumerable(T)のどちらを選ぶか? - よねKENのプログラミング研究

    .NET Frameworkのクラスライブラリでは、IEnumerable(T)に対して多数の拡張メソッドが用意されています。これは非常に便利です。ここで自作の拡張メソッドを作成する場合に悩むことがあります。集合に対する拡張をしたい場合、IEnumerable(T)向けに拡張メソッドを書くと柔軟性が高まることは確かですが、質的にIEnumerable(T)のメソッドであるべきだろうか?と悩むことがあります。具体例を挙げたいと思います。私は順列を生成する以下のようなメソッドを定義しました。 /// <summary> /// 順列を生成する /// </summary> /// <param name="elements">順列の要素</param> /// <param name="selectionCount">要素から何個選択するか</param> /// <param name="

    拡張メソッドのターゲットにIList(T)とIEnumerable(T)のどちらを選ぶか? - よねKENのプログラミング研究
  • Implement a Dispose method - .NET

    The Dispose method is primarily implemented to release unmanaged resources. When working with instance members that are IDisposable implementations, it's common to cascade Dispose calls. There are other reasons for implementing Dispose, for example, to free memory that was allocated, remove an item that was added to a collection, or signal the release of a lock that was acquired. The .NET garbage

    Implement a Dispose method - .NET
  • 確認要求

    セキュリティ確認要求呼び出しを宣言的または強制的に使用することで、直接または間接の呼び出し元が、作成したライブラリにアクセスするために持っている必要があるアクセス許可を指定できます。 直接の呼び出し元は、ライブラリの静的メソッドまたはインスタンス メソッドを明示的に呼び出しますが、間接の呼び出し元は、そのライブラリを呼び出す別のライブラリの静的メソッドまたはインスタンス メソッドを呼び出します。 確認要求を使用すると、作成したコードを含んだアプリケーションは、コードの直接および間接のすべての呼び出し元がその確認要求で指定されたアクセス許可を持っている場合にだけ実行されます。 確認要求は、作成したクラス ライブラリが、信頼されていないコードからのアクセスを避ける必要がある、保護されたリソースを使用している場合には特に有用です。 確認要求は、強制構文または宣言構文のいずれかを使用してコード内に

    確認要求
    atsukanrock
    atsukanrock 2009/05/27
    CAS。PermissionのDemandについて
  • プログラマのためのセキュリティ対策テクニック - 第 13 章 安全な .NET プログラム

    高度に相互接続されたWebベースのサービスで、トランスポートにHTTP、コンテンツにXMLを使用した新しい環境に勇敢に乗り出すとき、サービスは潜在的な悪意を持つ多数の人々にさらされます。したがって、セキュリティの重要性はさらに高まります。「第1章 セキュリティの必要性」で言及したように、インターネットなどを経由して相互接続したコンピュータは、真っ先に攻撃の対象になります。スタンドアロンコンピュータに対してセキュリティを侵害する攻撃が仕掛けられる可能性より、はるかに大きいのです。明らかに、WebベースのMicrosoft .NETサービスを利用するクライアントおよびサーバーは高度にネットワーク化されているため、セキュリティ攻撃に対して警戒を要します。 .NET共通言語ランタイム(CLR:Common Language Runtime)によって提供されるマネージコードは、バッファオーバーフロー

    プログラマのためのセキュリティ対策テクニック - 第 13 章 安全な .NET プログラム
  • ガベージ コレクションのプログラミング

    .NET Framework のガベージ コレクタは、アプリケーションのメモリの割り当ておよび解放を管理します。new 演算子を使ってオブジェクトを生成するたびに、共通言語ランタイムは、マネージ ヒープからオブジェクトにメモリを割り当てます。マネージ ヒープに使用可能なアドレス空間がある限り、ランタイムは新しいオブジェクト用に領域の割り当てを続けます。しかし、メモリの大きさは無限ではありません。最終的には、ガベージ コレクタが、一部のメモリを解放するためにガベージ コレクションを実行する必要があります。コレクションの実行に最適な時期は、ガベージ コレクタの最適化エンジンが、割り当てられるオブジェクトの状況に応じて決定します。コレクションを実行する場合、ガベージ コレクタは、アプリケーションによって使用されなくなったオブジェクトがマネージ ヒープにあるかどうかをチェックし、使われていないオブ

    ガベージ コレクションのプログラミング
  • 文字列の比較

    Compare メソッドを使用して、2 つの文字列の相対値を確認する例を次に示します。 Dim MyString As String = "Hello World!" Console.WriteLine([String].Compare(MyString, "Hello World?")) string MyString = "Hello World!"; Console.WriteLine(String.Compare(MyString, "Hello World?")); この例は、コンソールに -1 と出力します。 既定では、上の例はカルチャによって異なります。文字列操作がカルチャに依存しないようにするには、使用するカルチャを culture パラメータで指定できる String.Compare メソッドのオーバーロードを使用します。String.Compare メソッドを使用してカ

    文字列の比較
  • 国際対応アプリケーションの開発

    国際対応アプリケーションを開発するときには、アプリケーションの設計と開発手順におけるさまざまな問題に注意する必要があります。主要な問題としては、グローバリゼーション、ローカライズ対象の確認、ローカリゼーションの 3 つがあります。 開発作業では最初にグローバリゼーションに取り組みます。グローバライズされたアプリケーションは、すべてのユーザーのために、ローカライズされたユーザー インターフェイスと地域データをサポートします。当にグローバルなアプリケーションは、特定の文化 (カルチャ) や言語に依存しません。ローカリゼーションの前の段階の中間ステップで、ローカライズの可能性をテストします。このステップでは、変換が必要なアプリケーションのリソースをアプリケーションのその他のコードから分離します。ローカリゼーション ステップの前にローカライズの可能性を適切にテストすると、ローカリゼーション段階で

    国際対応アプリケーションの開発
  • ExpandableObjectConverterっていちいち実直に実装するのは面倒だよね。Reflectionを活用してネストしたプロパティを楽に量産してみよう。 - Bug Catharsis

    ExpandableObjectConverterのサブクラスで実装する内容 TypeConverterAttribute属性を用いて、ExpandableObjectConverterおよび、その派生クラスを指定することで プロパティグリッドにネスト表示されるプロパティを作成することができます。 通常、ExpandableObjectConverterから派生したサブクラスを作る場合は、 GetProperties、CanConvertFrom、CanConvertTo、ConvertFrom、ConvertTo、GetPropertiesSupported などの各メソッドを必要に応じてオーバーライドして実装することになります。 そこで実装する内容は、プロパティの型やその項目数に応じて、 プロパティグリッドに表示する内容と、対象となる型との相互(または単方向)コンバートとなります。 E

    ExpandableObjectConverterっていちいち実直に実装するのは面倒だよね。Reflectionを活用してネストしたプロパティを楽に量産してみよう。 - Bug Catharsis
  • 1