ソフトウェアの動的進化を実現するNegligent Class Loader
Java におけるクラスの動的進化を実現するために、コンポーネント間のバージョンバリアをあらかじめ指定した兄弟クラスローダの間でだけ緩められるクラスローダ (NCL : Negligent Class Loader) を提案する。バージョンバリアとは、あるバージョンのクラスのインスタンスを別バージョンのクラスの変数へ代入させない仕組みである。Java では同じ名前でも別のクラスローダでロードされたクラスは異なるクラスとして認識され、本稿では、そのようなクラスを異なるバージョンと表現する。バージョンバリアが緩められることで、古いアプリケーションは進化のために新クラスローダによりロードされた別バー...
Saved in:
Published in | 日本ソフトウェア科学会大会講演論文集 p. 49 |
---|---|
Main Authors | , |
Format | Journal Article |
Language | Japanese |
Published |
日本ソフトウェア科学会
2004
|
Subjects | |
Online Access | Get full text |
Cover
Loading…
Summary: | Java におけるクラスの動的進化を実現するために、コンポーネント間のバージョンバリアをあらかじめ指定した兄弟クラスローダの間でだけ緩められるクラスローダ (NCL : Negligent Class Loader) を提案する。バージョンバリアとは、あるバージョンのクラスのインスタンスを別バージョンのクラスの変数へ代入させない仕組みである。Java では同じ名前でも別のクラスローダでロードされたクラスは異なるクラスとして認識され、本稿では、そのようなクラスを異なるバージョンと表現する。バージョンバリアが緩められることで、古いアプリケーションは進化のために新クラスローダによりロードされた別バージョンクラスのインスタンスを受け取れる。また、バージョンの異なるクラスのインスタンスがどちらのバージョンのクラスとしても安全にアクセスされるように、NCL は一方のバージョンがもう一方のバージョンに互換するようにクラスをロードする。 |
---|---|
Bibliography: | 4B-3 |
ISSN: | 1349-3515 |
DOI: | 10.11309/jssstconference.21.0.49.0 |