08/09/10 20:39:36 RpZoWrvp
>>127
YZさん
>IDというのはGUIDのことですか?
そうです。
>なるほど該当GUIDのプラグインを逐次生成しているということですか。
厳密には逐次生成ではありません。使い回しです。
ソースをご覧になればすぐおわかりになると思いますが、
既に存在しているプラグインをPluginManagerから取得しています。
プラグインは理想的にはFreeTrainの起動時に全てインスタンス化されて登録されているはずなので、
ゲームデータのロード時に同じプラグインのメモリイメージを生成するのは不適切であり、
IDを頼りに登録済みのインスタンスを取得して使い回すというのは理にかなった設計と思います。
あと、デシリアライズのカスタマイズではパフォーマンスもよく問題になるそうです。老婆心ながらご注意を。
デシリアライズをカスタマイズすると、型の解決(クラスパス検索?)が極めて遅くなる事例があるそうです。
以前、FreeTrainにはロードが極端に遅い、という問題があったこと、記憶されている方もいるかと思います。
あれは、私の株式プラグインのコードに問題があるせいでしたが、おそらく根は良く似た問題ではないかと。