绑定

✍ dations ◷ 2025-11-22 20:53:55 #计算机科学

在计算机科学中,所谓的绑定(Binding)是指创造一个简单的参考(reference),并将它指向一个更复杂更大的结构以利后用。此简单参考可以替代此巨大结构,在之后的程序中轻盈地使用。

下列的行为可视为绑定的范畴。

语言或名词绑定指的是库如何与应用程序链接,以及编译器/解释器如何管理链接符号(变量名称)。

这些名词在编程语言表示利用先前指定的变量符号来指涉数值。在这样的情境下,绑定是一种将机器记忆空间的位置与变量或符号产生关连的行为。此种关连要不是在编译时间产生,此种关连称为静态链接(Static linking);或者是在运行期机动产生,则称为动态链接(Dynamic linking)。

链接与绑定有时是同样意思。例如真实生活中的动态链接,指的是某人知道要在某时某地做事,但是他并不想查地址或找地图,直到事情的期限要到了才开始查找。模拟于程序运行面,则是当一程序运行时(也许已运行很久),此程序至此时才得到对应的存储器位置,并运行此位置的函数,此称运行期绑定。

动态链接库(例如Windows的.dll文件,Linux上的动态库)是典型的运行期绑定库。它们称做晚绑定(对比于早绑定,或称编译时期绑定)。由于晚绑定只会在程序第一次需要相关函数支持时才会导入(若此程序从未调用相关函数,则此绑定行为就不会引导),因此此类绑定策略也称懒惰绑定。

Windows、Unix与Linux操作系统为了节省存储器以及程序大小,通常将晚绑定视为默认选项。若是要使用早绑定,通常要在编译时间时就决定;此决定会让产出的程序变得较大(因为他将所有用到的库都一起编入程序中),但是可携性较强(可以避免其他电脑没有安装所需库的风险)。

早绑定有一项额外的特质,它避免了在晚绑定中,更新库却造成程序无法运行的窘境。

命令绑定,通常指称键盘宏,或简称宏,通常是用在专业应用程序中。很多情况下,键盘按键与指令之间的绑定可以修改或增加,但通常无法移除。

许多命令绑定都非常有名,例如Mac OS的存储功能可以用Command-S按键组合来达到,因此每当用户要存储文件时,可直接按Command-S达到功能,而非每次都从菜单选取。Emacs文字处理软件提供了Control-X再按Control-C达到存储再关闭本软件的功能。另外,最为恶名昭彰的按键宏应该是Windows死机时的Control-Alt-Delete按键了。

某些软件,例如微软Excel允许用户自定义宏,以简化用户的操作步骤,并将此宏与某些命令名称绑定在一起。

在电子游戏中所谓的流程绑定,指的是将任何键盘按键与特定功能结合,而覆盖其原本的键盘功能。一个拥有复杂控制接口的游戏,例如绝对武力,可以依靠一串特定的按键以缩短复杂功能的输入(例如游戏内通信)。

相关

  • 产气荚膜梭菌产气荚膜杆菌(学名:Clostridium perfringens)是革兰氏阳性杆状厌氧菌,因能分解肌肉和结缔组织中的糖类而产出大量气体以及可以在体内能形成荚膜而得名。发现于人类和其他脊椎动
  • 水利水利工程(Hydraulic engineering)是为了控制、利用和保护地表及地下的水资源与环境而修建的各项工程建设的总称。土木工程中着重于水流体的自然运动与人工输送及利用的一门分
  • 隐含狄利克雷分布隐含狄利克雷分布(英语:Latent Dirichlet allocation,简称LDA),是一种主题模型,它可以将文档集中每篇文档的主题按照概率分布的形式给出。同时它是一种无监督学习算法,在训练时不需
  • 大毘婆沙论《阿毘达磨大毘婆沙论》(梵语:Abhidharma Mahāvibhāṣā Śāstra),又称《阿毘达磨发智大毘婆沙论》、《大毗婆沙论》、《鞞婆沙论》,佛教论书。佛教学者认为它约在公元150年前
  • 巴塞尔银行监理委员会巴塞尔银行监理委员会于1974年由全球十大工业国(G10)的央行共同设立,每年定期集会四次,属于国际清算银行辖下,其成员包括比利时、加拿大、法国、德国、意大利、日本、卢森堡、荷
  • 莫德斯托地区莫德斯托 (英语:Modesto, California),是美国加利福尼亚州斯坦尼斯劳斯县的县治。面积93.1平方公里,2006年人口212,756人。1870年开埠,1884年建市。
  • 威廉·佩利 (哲学家)威廉·佩利(英语:William Paley 1743年7月-1805年5月25日)英国神职人员、基督教辨惑学者、哲学家、功利主义者。著作有《自然神学:从自然现象中收集的关于神性存在和其属性的证
  • 乔治·斯内尔乔治·斯内尔(英语:George D. Snell,1903年12月19日-1996年6月6日),美国遗传学家,免疫遗传学奠基人,生于美国马萨诸塞州布拉德福德。他的主要成就是发现遗传因素决定了个体间移植组
  • 计算社会学计算社会学是社会学的一门分支,使用密集演算的方法来分析与模拟社会现象。计算社会学使用计算机模拟、人工智能、复杂统计方法,以及像是社会性网络分析等新的途径,由下而上地塑
  • 软件定义卫星软件定义卫星是一种开放架构的卫星系统,它具有强大的星上计算能力,能够通过软件上注、在轨发布APP等方式增强或改变其功能,能够完成多种不同的空间任务,可以被众多用户共享使用,