タグ

2009年5月19日のブックマーク (5件)

  • C# Tips -XMLドキュメントとNDoc-

    C#コンパイラにはXMLでドキュメントを抽出する機能が標準で付いてます(JavaでいうJavaDocと同じようなものです)。 チュートリアル [Web] [ms-help] を見てもらえばだいたいわかるでしょう。 要は ドキュメント化するコメントは "///" で始める。 概要や引数をタグでくくって書く。 コンパイルするときに「csc /doc:ファイル名」とする。 ってだけです。 こちらの「XMLドキュメント」 [Web] [ms-help] も参照してみてください。 雛形 雛形です。とりあえず、これだけ書けば十分かな? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48

    mugaki
    mugaki 2009/05/19
  • 属性

    概要 属性(attribute)とはクラスやメンバーに追加情報を与えるものです。 例えば、public や private などといったC#のキーワードもある種の属性と考えることが出来ます。 public ならば「このメンバーはクラス外からも参照可能」、 private ならば「このメンバーはクラス内のみから参照可能」という追加情報が与えられます。 C++ などの既存の言語では、このような追加情報を定義する場合、 言語仕様自体を拡張し、新たにコンパイラを作り直す必要がありました。 それに対し、C# では自分で属性を定義し、クラスやメンバーに付加することが出来ます。 すなわち、ライブラリで提供されている属性や自作した属性を用いることで、 コンパイラに対する指示を行ったり、クラスの利用者に対する情報を残すことが出来ます。 属性の情報は、以下のような場面で使われます。 条件コンパイルなどの、コン

    属性
    mugaki
    mugaki 2009/05/19
    アセンブリとモジュールの説明がわかりやすい
  • 型のメンバを動的に呼び出す - .NET Tips (VB.NET,C#...)

    型のメンバを動的に呼び出すTypeオブジェクトで表された型のインスタンスの作成、メソッドの呼び出し、プロパティ、フィールドの設定と取得の方法について説明します。 ここでは、次のようなクラスが宣言されているものとします。 Namespace MyNamespace Public Class TestClass 'フィールド Private PrivateField As Integer Public StringArray() As String 'プロパティ Public Property PublicProperty() As Integer Get Return PrivateField End Get Set(ByVal Value As Integer) PrivateField = Value End Set End Property 'インデクサ Default Public

    型のメンバを動的に呼び出す - .NET Tips (VB.NET,C#...)
    mugaki
    mugaki 2009/05/19
  • アセンブリ (.NET) - Wikipedia

    .NET Frameworkにおいてアセンブリ (assembly) とはコンパイルされたコードライブラリのことであり、配置・バージョン管理・セキュリティ管理の単位となる。 [編集] 概要 Windowsの.NETの実装においては、アセンブリはPE形式ファイルである。アセンブリにはプロセスアセンブリ (EXE)とライブラリアセンブリ (DLL)の二種類がある。CLR 1.1においてはクラスの外部への公開はライブラリアセンブリでのみ可能だったが、CLR 2.0ではこの制限は緩和された。.NETはアセンブリがプロセスかライブラリかを判断するのに拡張子ではなく内部に設定されたフラグを用いる。従って、ライブラリアセンブリが.exeの拡張子をもつことも可能である。 アセンブリに格納されるコードはコンパイルされてCILの形をとっており、実行時には仮想実行システム(VES)によって実行される。 アセンブ

    mugaki
    mugaki 2009/05/19
  • C# Tips - Tips for us.

    クラスライブラリを動的に参照する 複数の環境(仕様)に合わせた調整が必要な場合、ソースコードをそのたびに書き換えたり、クラスを追加したりすると、アプリケーションのバージョン管理が複雑になっていきます。 そこで、実装が多様なところ、今後変更が予想されるところをクラスライブラリ(DLL)として体から切り離しましょう。体のリリース後に機能切替が必要なので、実行時にDLLを参照する必要があります。 また、そうする事で、第三者によるプラグイン開発の可能性も・・・ インターフェース用DLL(LibInterface.DLL) ライブラリ開発者に配布 namespace MyNameSpace { public interface ILibTest { string msg(); } } ライブラリの実装1(LibTestA.DLL)上のDLLを参照する。 namespace HisNameSpac

    mugaki
    mugaki 2009/05/19