assemblyに関するdotsargのブックマーク (4)

  • スクリプトのコンパイルとアセンブリ定義ファイル - Unity マニュアル

    概要 Unity は、スクリプトがどのようにマネージアセンブリにコンパイルされるかを自動的に定義します。 通常、スクリプトの変更に対する Unity エディターのコンパイル時間は、プロジェクトに加えるスクリプト量が増えるほど長くなります。 フォルダー内のスクリプトに基づいて独自のマネージアセンブリを定義するには、アセンブリ定義ファイルを使用します。これを行うには、適切に定義された依存関係を持つ複数のアセンブリにプロジェクトのスクリプトを分けます。こうすると、スクリプトで変更を加えたときに必要なアセンブリのみが再構築され、コンパイル時間が削減されます。Unity プロジェクト内では、各マネージアセンブリを単一のライブラリと考えることができます。 図 1 - スクリプトコンパイル 図 1 上の図は、プロジェクトスクリプトをいくつかのアセンブリに分ける方法を示しています。Main.dll のスク

    スクリプトのコンパイルとアセンブリ定義ファイル - Unity マニュアル
  • 型フォワーディング

    .NETでは、「アセンブリ+名前」の組み合わせで型を厳密に判定します。 その結果、異なるアセンブリでまったく同じ名前の型を定義しても、それぞれ別の型として扱われます。 これは、人的ミスの削減や、悪意あるコードへの耐性につながる一方で、 型の定義場所を移動させたいときに困ります。 そこで.NETは、型の検索の際に、別のアセンブリに転送する仕組みを提供しています。 これを型フォワーディング(Type Forwarding)と呼びます。 概要 TypeForwardedTo属性 モジュール分割 余談: 逆のやり方 余談: .NET 標準ライブラリのモジュール化 バックポーティング 概要 .NETでは、「アセンブリ+名前」の組み合わせで型の所在を検索します。 その結果、異なるアセンブリでまったく同じ名前の型を定義しても、それぞれ別の型として扱われます。 これは、人的ミスの削減や、悪意あるコードへの

    型フォワーディング
    dotsarg
    dotsarg 2016/10/18
    型フォワーディングによるライブラリ分割の方法が掲載されている。
  • カスタム属性を使用した宣言による難読化

    .NET Framework バージョン 2.0 で、アセンブリの自動難読化を容易にするための 2 つの新しいカスタム属性が用意されました。これらの属性により、構成ファイルを設定する必要がなくなりました。このセクションでは、Dotfuscator でこれらの属性を使用する方法を概説します。ここでの説明は、カスタム属性の基的な使用方法や開発言語でのカスタム属性の適用方法を理解していることを前提としています。 System.Reflection.ObfuscateAssemblyAttribute この属性はアセンブリ レベルで使用され、Dotfuscator に対してアセンブリ全体の難読化方法を指示します。AssemblyIsPrivate プロパティを false に設定すると、Dotfuscator はそのアセンブリをライブラリ モードで実行します。このプロパティを true に設定す

    カスタム属性を使用した宣言による難読化
  • インサイド .NET Framework [改訂版]第2回 アセンブリのアイデンティティ(2/5) - @IT

    *2 このデジタル署名は証明書ではないので、公開キーだけを見てもそれがだれのものなのかを判別することはできない。ただし、アセンブリには従来のActiveXコントロールと同様に、Authenticodeテクノロジを使って証明書を埋め込むこともできる。 秘密キー/公開キー・ペアの作成 アセンブリに厳密名をつけるには、AssemblyKeyName属性(とコマンドライン引数)に秘密キーと公開キーのペアを渡す必要がある。このペアは、厳密名ツール(sn.exe)で作成する。 sn.exeに“-k”オプションを付けて、ファイル名を指定すると、キー・ペアを作成してファイルに出力することができる。 % sn.exe -k fumiakiy.snk キー・ペアはファイルとしてそのまま保存しておくのはよくない。次のように“-i”オプションでファイルとCSPコンテナを指定して、適切な場所に保管した方がいいだろう

  • 1