- 作者:zhaozj
- 发表时间:2020-12-23 10:57
- 来源:未知
90年代出现的分布式对象技术为网络计算平台上软件的开发提供了强有力的解决方案。目前,分布式对象技术已经成为建立服务应用框架和软件构件的核心技术,在开发大型分布式应用系统中表现出强大的生命力,逐渐形成了3种具有代表性的主流技术,即Microsoft的COM/DCOM技术、Sun公司的Java技术和OMG的COBRA技术。本期访谈,中国科学院软件研究所对象技术研究开发中心李京主任将带我们一起去看看—— 问:分布对象技术是如何产生出来的呢?它的概念是什么?
答:应该说,分布对象技术是伴随网络而发展起来的一种面向对象的技术。以前的计算机系统多是单机系统,多个用户是通过联机终端来访问的,没有网络的概念。网络出现后,产生了Client/Server的计算服务模式,多个客户端可以共享数据库服务器和打印服务器等等。随着网络的更进一步发展,许多软件需要在不同厂家的网络产品、硬件平台、网络协议异构环境下运行,应用的规模也从局域网发展到广域网。在这种情况下,Client/Server模式的局限性也就暴露出来了,于是中间件应运而生。中间件是位于操作系统和应用软件之间的通用服务,它的主要作用是用来屏蔽网络硬件平台的差异性和操作系统与网络协议的异构性,使应用软件能够比较平滑地运行于不同平台上。同时中间件在负载平衡、连接管理和调度方面起了很大的作用,使企业级应用的性能得到大幅提升,满足了关键业务的需求。但是在这个阶段,客户端是请求服务的,服务器端是提供服务的,它们的关系是不对称的。随着面向对象技术的进一步发展,出现了分布式对象技术。可以这么说,分布式对象技术是随着网络和面向对象技术的发展而不断地完善起来的。90年代初CORBA 1.0标准的颁布,揭开了分布式对象计算的序幕。
分布对象计算中,通常参与计算的计算体(分布对象)是对称的。分布对象往往又被称为组件(Component),组件是一些独立的代码的封装体,在分布计算的环境下可以是一个简单的对象,但大多数情况下是一组相关的对象复合体,提供一定的服务。分布环境下,组件是一些灵敏的软件模块,它们可以位置透明、语言独立和平台独立地互相发送消息,实现请求服务。
问:您提到,分布对象技术随着面向对象技术的发展而不断地成熟与完善起来,那么,分布对象技术与传统的面向对象的技术有什么本质不同?