zillionプロジェクト開発ブログ アドイン機能の実装について 忍者ブログ

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

[Kyasbal]
全部が全部、機能をこちらで実装するのは無理だと思われるので、アドイン(プラグイン、アドオンなどとも言われる・・)機能を実装しようと思うのです。

さて、アドイン機能は後回しでいいかといわれると、どうでしょう、インターフェースを準備するのが大変ですから、忘れたころに『ここをアドイン対応にしよう』なんて言ったとき、『あれ、ここ何の処理してたっけ?』なんてことにならないかが不安です。

そのための仕様書なのですが・・・

さて、.Net FrameWork4.0+C#4.0 で開発する際に、アドイン開発として取れる可能性は2つ。
①リフレクションを使った実装。
②System.Addin名前空間内のクラスを使用した実装。

前者は、かなり実装がしやすいです。C#のほうの経験がそこまで深くない僕でもなんでこのコードになるのか、わかって実装できます。
しかし、後者は正直難しいです。1種類のアドインに5つのアセンブリが必要になります。(ここでのアセンブリとはC#でいうアセンブリの事です。)増して、いろんな警告が出たりとかして、もうわけわかんない。そんな感じになるわけです。

それでも、②には非常に大きな利点があって、アプリケーションドメインが分離できるという利点を持ちます。
それはつまり、わかりやすく言えば、アドインに悪意のあるプログラムを作り、アプリケーションをフリーズさせるというアドインがあった時、アプリケーションドメインの分離がされているので、フリーズするのは結局そのアドイン側となるのです。

プラグイン機能を作れば、当然そこからの脆弱性を考えなければいけません。
しかしながら、System.Addinを使用すれば少しはその危険は少なくなります。(最も公開するインターフェースにかなり左右されますが)

いずれにせよよく考えなければいけない項目です。
もう少し考えて実装してみます。

拍手[0回]

PR

◎ Post your Comment
Name
Title
E-mail
URL
Comment
Pass   Vodafone絵文字 i-mode絵文字 Ezweb絵文字
◎ この記事へのトラックバック
Trackback URL
◎ カウンター
◎ カレンダー
03 2024/04 05
S M T W T F S
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
◎ 最新CM
[10/24 名無しの権兵衛]
[08/30 名無しの権兵衛]
[08/14 no name no future]
[08/05 ゲームサークルEaSt]
[07/28 リオウ]
◎ プロフィール
HN:
solilpquy
年齢:
29
性別:
男性
誕生日:
1994/09/22
職業:
人間
趣味:
趣味ねぇ~~う~ん・・・
◎ ブログ内検索
◎ バーコード
◎ アクセス解析
◎ フリーエリア
◎ フリーエリア
Script: Ninja Blog 
Design by: タイムカプセル
忍者ブログ 
[PR]