桩 (计算机)

✍ dations ◷ 2025-04-26 17:31:36 #计算机编程

桩(Stub / Method Stub)是指用来替换一部分功能的程序段。桩程序可以用来模拟已有程序的行为(比如一个远端机器的过程)或是对将要开发的代码的一种临时替代。因此,打桩技术在程序移植、分布式计算、通用软件开发和测试中用处很大。

以下是桩程序的一个例子(伪码):

   BEGIN       Temperature = ThermometerRead(Outside)       IF Temperature > 40 THEN            PRINT "It's HOT!"       END IF   END
   BEGIN ThermometerRead(Source insideOrOutside)        RETURN 28   END ThermometerRead

上例中的伪码调用了 ThermometerRead函数,其返回一个温度。由于ThermometerRead需要去读取硬件设备,而这个函数现在还没能开发完成,不能正常工作。ThermometerRead只是简单的返回了一个合理的值,这样主程序就能正常调用这个函数,并继续接下来的开发了。可以注意到,虽然它接受了一个Source类型的参数,表明需要返回的温度是内部还是外部的,实际上并没有对这个参数进行任何使用。

桩程序是一段并不执行任何实际功能的程序,只对接受的参数进行声明并返回一个合法值。这个返回值通常只是一个对于调用者来讲可接受的值即可。桩通常用在对一个已有接口的临时替换上,实际的接口程序在未来再对桩程序进行替换。

在远程方法调用(RMI)中将客户辅助对象称之为Stub(桩);将服务辅助对象称之为skeleton(骨架)。

RMI的过程是:客户对象一旦被调用,客户对象调用stub,stub调用网络远端的skeleton,而skeleton最终调用真正的服务对象。由此,在调用客户对象的时候,感觉上就是直接调用了真正的服务对象。



相关

  • 内视镜内窥镜(内射镜)(endoscopy (looking inside))泛指经各种管道射入人体,以观察人体内部状况的医疗仪器。部分内窥镜同时具备治疗的功能,如膀胱镜、胃镜、大肠镜(英语:Colonoscopy)、
  • 牛排牛排,块状的牛肉。随着使用牛只部位的变更,延伸出多种不同的种类,是西餐中最常见的食物之一。牛排的烹调方法以煎和烧烤为主。清末小说中已出现“牛排”、“猪排”等西菜菜名,可
  • 中枢神经系统疾患中枢神经系统疾病,是指影响中枢神经系统内的人脑或脊髓结构或功能的神经系统疾病。每种疾病都有不同的体征和症状如持续性头痛;面部,背部,手臂或腿部疼痛;无法集中注意力;失去感觉
  • 君子协定《君子协定》(英语:Gentleman's Agreement)是一部于1947年上映的美国剧情电影,由伊利亚·卡赞执导。本片改编自劳拉·Z·霍布森(英语:Laura Z. Hobson)的畅销同名小说《君子协定(英
  • 旧高等农林学校作业室坐标:25°0′57.38″N 121°32′28.09″E / 25.0159389°N 121.5411361°E / 25.0159389; 121.5411361矶永吉小屋,全称为旧高等农林学校作业室,简称矶小屋,位于国立台湾大学公馆
  • 马拉加酒马拉加酒(西班牙语:Málaga Vino)是一种西班牙马拉加省出产的各种葡萄酒的总称。马拉加和附近山区拥有欧洲最古老的酿酒历史之一,其葡萄酒指定原产地(La Denominación de Origen
  • 埃迪森·查拉埃迪森·查拉(Édison Chará,1980年10月2日-2011年10月19日),是一名已故哥伦比亚职业足球运动员,司职前锋,生前曾效力于中国球会大连阿尔滨。查拉早期曾效力哥伦比亚国内多支球队
  • 101真狗《101真狗》(英语:101 Dalmatians)是一部真人与3D动画结合的电影,重拍101忠狗,由Stephen Herek(英语:Stephen Herek)执导,1996年11月27日于美国上映。续集《102斑點狗》于2000年由迪
  • 24时间《24时间》是韩国男子组合INFINITE的第六张日语单曲,由松尾洁(日语:松尾潔)和和田昌哉创作,并在2015年4月29日以九个不同版本推出。2015年3月14日,韩国公司Woollim娱乐在INFINITE
  • 韩国铁道9501系柴油动车组韩国铁道9501系柴油动车组,或称通勤型柴油动车组(朝鲜语:통근형 디젤 동차,朝鲜汉字:通勤型디젤動車;英语:Commuter Diesel Car,简称CDC)。是韩国铁道公社的一款柴油动车组,现在普遍运