|
计算机科学 2002
A Survey of Open Implementation and Computational Reflection Technology
|
Abstract:
1.引言传统上软件开发遵循这样的原则:模块应提供表达其功能的接口,同时应隐藏其实现细节。这个原则被非正式地称为“黑盒抽象”,是软件设计的一个基本方法学原则,也是其他研究方向比如可移植性、重用、组件软件、软件工程方法、标准式设计等的基石。但是近年来随着软件重用技术和软件可扩展性技术的发展,人们对这样一个软件基本准则提出了疑问。主要的疑问是:模块的最佳实现策略在不知道模块的具体使用环境的情况下是不能确定的。也就是说,用户(模块的使用者)而不是模块的设计者通常知道实施方案的最佳策略。但在黑盒抽象原则下,设计者过早地确定了实现策略.并且在黑盒中固化,用户不能改变这些策略.因而往往不能满足用户的需求。