检索规则说明:AND代表“并且”;OR代表“或者”;NOT代表“不包含”;(注意必须大写,运算符两边需空一格)
检 索 范 例 :范例一: (K=图书馆学 OR K=情报学) AND A=范并思 范例二:J=计算机应用与软件 AND (U=C++ OR U=Basic) NOT M=Visual
机构地区:[1]南京大学软件新技术国家重点实验室
出 处:《计算机科学》2007年第4期250-253,共4页Computer Science
基 金:江苏省科技攻关项目(BE2003064)资助
摘 要:随着研究与应用的深入,传统的基于类的面向对象语言对动态变化要求的支持不足越来越明显。而且,由于软件系统复杂性的不断提高,这个问题变得更加突出。近年来,人们一直在进行着各种研究和尝试,寻求解决办法。delegation是一种在基于原型的面向对象语言中实现的对象动态继承,由于它支持对象行为在运行期动态改变,能提供对象动态扩展功能的能力,因此探讨如何在基于类的面向对象语言中引入delegation成分,以提供软件运行时刻的结构与行为变更能力,是十分有意义的。本文提出了一种命令式、带有delegation的Φ对象演算,以该演算系统刻划程序设计语言的基本特征;通过给出Φ演算的语法和操作语义;详细描述程序中各种操作的实现方法;着重说明在程序语言中引入delegation成分后,对象之间共享方法和对象扩展功能所具有的灵活性和简单性。从而说明在程序语言中引入delegation,以支持软件动态变更是一种有效且可行的途径。Due to the development of more and more large and complex computing systems, software systems are always required to be changed at run-time. However, in the software systems that are developed using the traditional class-based object-oriented languages, this can not be done easily. Nevertheless, delegation, which is a language mechanism supported in prototype-based object-oriented language and enables objects to share methods dynamically, provide a promising method to solve the above problem. Actually, in recent years, delegation is an active research field among programming language researchers. In this paper, we will investigate this language mechanism by presenting Φ calculus. Φ calculus is an imperative object-based calculus. We use it to model essential features of languages, focusing on how to incorporate delegation into programming languages to support dynamic software changing. We give the operational semantics of Φ calculus. We also state how delegation is used in object extending and method sharing between objects. We conclude that delegation is an effective way to dynamic software changes.
关 键 词:基于类的面向对象语言 基于原型的面向对象语言 西对象演算
分 类 号:TP301.2[自动化与计算机技术—计算机系统结构]
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在链接到云南高校图书馆文献保障联盟下载...
云南高校图书馆联盟文献共享服务平台 版权所有©
您的IP:18.188.15.246