桩 (计算机)

✍ dations ◷ 2025-12-04 22:20:07 #计算机编程

桩(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最终调用真正的服务对象。由此,在调用客户对象的时候,感觉上就是直接调用了真正的服务对象。



相关

  • 多株抗体多克隆抗体,亦作“多株抗体”(Polyclonal Antibody)是一种含有多种类型抗体的抗体混合物。其名称中的“多”指抗体混合物由不同类型的浆细胞生产而来:430。要生产多克隆抗体,首
  • 犹太公会犹太公会或犹太公议会(希伯来语:סנהדרין,希腊语:συνέδριον,意思就是“坐在一起”)是古代以色列由71位犹太长老组成的立法议会和最高法院。这个议会包括一名大法官
  • 神奈川县神奈川县(日语:神奈川県/かながわけん Kanagawa ken */?)是日本的一级行政区之一,位于关东地方西南端,东京都以南,西接山梨县和静冈县、东滨东京湾、南滨相模湾。境内拥有古都镰
  • 魏天赏魏天赏,字崃菴,河南遂平县人。清初官员。崇祯十六年(1643年)中癸未科进士。未及授官,甲申之变,李自成陷北京,遂降,授官淮扬盐运使。顺治元年,清兵入关(1644年),仕清。顺治三年(1646年),补选
  • 英雄儿女《英雄儿女》是1964年中国摄制的一部抗美援朝题材的电影,由长春电影制片厂摄制,与《上甘岭》《奇袭白虎团》和《冰血长津湖》为同一类型电影。电影《英雄儿女》是由巴金的小说
  • 利摩日蒙若维站利摩日蒙若维站(法语:Gare de Limoges-Montjovis)是法国的一个铁路车站,位于法国城市利摩日。利摩日蒙若维站位于利摩日市区西北部,距离利摩日贝尼迪克坦站大约1.2公里。该站仅停
  • 富谢卡尔山坐标:47°05′59″N 12°44′41″E / 47.09972°N 12.74472°E / 47.09972; 12.74472富谢卡尔山(德语:Fuscher-Kar-Kopf),是奥地利的山峰,位于该国南部,由克恩顿州负责管辖,属于高地
  • 兰德福兰基尚·阿里布尔·雅达(Ramkishan Alipur Yadav)生于1953年,以斯瓦米·兰德福(Swami Ramdev)闻名于世,是一名印度的印度尊者,同时也是著名的瑜伽教师。他同时也是季维亚哟门迪尔信
  • 高丽饭店坐标:39°0′31.47″N 125°44′9.92″E / 39.0087417°N 125.7360889°E / 39.0087417; 125.7360889高丽饭店(朝鲜语:고려호텔)是位于朝鲜民主主义人民共和国平壤市中区域的国
  • 约翰·霍金斯约翰·霍金斯爵士(英语:John Hawkins,1532年-1595年),英国海军司令、管理者、海盗、奴隶商人、商人、领航员、船舰建造者与私掠者。他的哥哥与贸易伙伴是威廉(b.c. 1519)。他被认