ソフトウェアの動的進化を実現するNegligent Class Loader

Java におけるクラスの動的進化を実現するために、コンポーネント間のバージョンバリアをあらかじめ指定した兄弟クラスローダの間でだけ緩められるクラスローダ (NCL : Negligent Class Loader) を提案する。バージョンバリアとは、あるバージョンのクラスのインスタンスを別バージョンのクラスの変数へ代入させない仕組みである。Java では同じ名前でも別のクラスローダでロードされたクラスは異なるクラスとして認識され、本稿では、そのようなクラスを異なるバージョンと表現する。バージョンバリアが緩められることで、古いアプリケーションは進化のために新クラスローダによりロードされた別バー...

Full description

Saved in:
Bibliographic Details
Published in日本ソフトウェア科学会大会講演論文集 p. 49
Main Authors 佐藤, 芳樹, 千葉, 滋
Format Journal Article
LanguageJapanese
Published 日本ソフトウェア科学会 2004
Subjects
Online AccessGet full text

Cover

Loading…
More Information
Summary:Java におけるクラスの動的進化を実現するために、コンポーネント間のバージョンバリアをあらかじめ指定した兄弟クラスローダの間でだけ緩められるクラスローダ (NCL : Negligent Class Loader) を提案する。バージョンバリアとは、あるバージョンのクラスのインスタンスを別バージョンのクラスの変数へ代入させない仕組みである。Java では同じ名前でも別のクラスローダでロードされたクラスは異なるクラスとして認識され、本稿では、そのようなクラスを異なるバージョンと表現する。バージョンバリアが緩められることで、古いアプリケーションは進化のために新クラスローダによりロードされた別バージョンクラスのインスタンスを受け取れる。また、バージョンの異なるクラスのインスタンスがどちらのバージョンのクラスとしても安全にアクセスされるように、NCL は一方のバージョンがもう一方のバージョンに互換するようにクラスをロードする。
Bibliography:4B-3
ISSN:1349-3515
DOI:10.11309/jssstconference.21.0.49.0