爱思维尔

计算机程序设计学

第115-116卷,2016年1月1日至2月1日,第3-22页
计算机程序设计学

面向服务的动态对象组的形式化模型

https://doi.org/10.1016/j.scico.2014.11.014获取权限和内容
在爱思唯尔的手下用户许可证
打开存档

集锦

具有动态成员和接口的对象组。

通过支持服务发现和查询,将面向服务和面向对象相结合。

灵活地将组视为一级公民,支持方法调用、隐藏、委派。

形式化:类型和效果系统,操作语义。

类型安全:没有方法在运行时不理解错误。

摘要

服务是自主的、自描述的、与技术无关的软件单元,可以在运行时发布、发现、查询并组合成软件应用程序。设计和组合软件服务以形成应用程序或复合服务,需要的抽象超出了典型面向对象编程语言的抽象。本文探讨了面向服务的抽象,如面向对象环境中的服务适配、发现和查询。我们开发了一个动态面向对象组的形式化模型,该模型为其环境提供服务。这些组直接适合于面向对象的范例,因为它们可以动态创建,它们有一个标识,并且可以接收方法调用。与对象不同,组不用于构造代码。组通过接口导出其服务,并依赖对象来实现这些服务。对象可以加入或离开不同的组。组可以动态导出新接口,它们支持服务发现,并且可以在运行时查询它们支持的接口。我们为这个动态对象组模型定义了一个操作语义和一个静态类型系统,并证明了良好类型的程序在运行时不会导致方法无法理解的错误。

关键词

面向对象
对象组
服务导向
多线程
并发
类型
语义学
型式安全

引用人(0)

部分由欧盟项目资助第7层-610582 设想:工程虚拟化服务(http://www.envisage-project.eu)以及第7层-612985 高档:通过基于类型的优化从固有的并发到大规模并行(http://www.upscale-project.eu).