什么是语言绑定?
我的好朋友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