什么是语言绑定?

时间:2020-03-05 18:42:46  来源:igfitidea点击:

我的好朋友Wikipedia对这个问题没有给我很好的答复。所以:

  • 什么是语言绑定?
  • 它们如何运作?

专门从以语言X编写的库的语言X中访问的代码访问函数。

解决方案

回答

在Flex中(动作脚本3)。来源

数据绑定将一个对象中的属性值复制到另一对象中的属性。我们可以绑定以下对象的属性:Flex组件,Flex数据模型和Flex数据服务。

提供数据的对象属性称为源属性。接收数据的对象属性称为目标属性。

下面的示例将TextInput组件的text属性(源属性)绑定到Label组件的text属性(目标属性),以便在Label组件中显示在TextInput组件中输入的文本:

<mx:TextInput id="LNameInput"></mx:TextInput>
...
<mx:Label text="{LNameInput.text}"></mx:Label>

数据绑定通常是将模型绑定到用户界面组件的简单方法。例如,我们有一个具有FirstName属性的类。在flex中,我们可以通过将文本框的值设置为{Object.FirstName}轻松地将该属性绑定到文本框。然后,每次FirstName属性更改时,文本框都会更新,而无需我们编写任何代码来监视该属性的更改。

希望能有所帮助。

马特

回答

好的,现在问题已经澄清了,这并没有什么实际意义,所以我将其移至一个新问题

绑定通常是指一件事物到另一事物的映射,即数据源到表示对象的映射。它通常可以引用将来自数据库或者类似源(XML文件,Web服务等)的数据绑定到HTML中的表示控件或者元素思考列表或者表格,组合框或者桌面软件中的数据网格。

...如果这是我们感兴趣的绑定类型,请继续阅读...

通常,我们必须将presentation元素绑定到数据源,而不是相反。这将涉及某种映射,即我们想将数据源中的哪些字段显示在输出中。

有关几种环境的更多信息,请参见:

  • http://www.akadia.com/services/dotnet_databinding.html
  • http://www.15seconds.com/issue/040630.htm
  • http://www.w3schools.com/ASPNET/aspnet_databinding.asp

回答

在代码库的上下文中,绑定是在两种编程语言之间架桥的包装器库,因此为一种语言编写的库也可以隐式地用另一种语言使用。

例如,libsvn是Subversion的API,是用C编写的。如果要从Java代码中访问Subversion,可以使用libsvn-java。 libsvn-java依赖于libsvn的安装,因为libsvn-java只是Java编程语言和libsvn之间的桥梁,它提供了一个仅调用libsvn函数来完成实际工作的API。

回答

假设我们创建一个C库以将内容发布到stackoverflow。现在,我们希望能够使用Python中的相同库。在这种情况下,我们将为库编写Python绑定。

另请参见SWIG:http://www.swig.org