链码与智能合约的区别

链码:是一种用于部署代码到 Hyperledger Fabric 区块链网络中的通用容器。链码中定义一个或多个相关联的智能合约。每个智能合约在链码中有一个唯一的标识名。应用程序通过合约名称去访问链码容器内的指定的智能合约。

 

智能合约(Smart Contract)是一种高级编程抽象的例子,可以在链码容器中定义智能合约。当一个链码被安装和实例化时,则链码内所有的智能合约对于相关联的通道(Channel)来说都是可用的。

 

多个智能合约能够被定义在同一个链码内。每一个智能合约都通过链码内的名字而被唯一标识

注:通常在构造类时分配名称,如果没有明确指明合约名,则会分配一个默认的名字--类名。建议使用显式的 DNS 样式命名方法,对组织清晰、有意义的名称有帮助;例如:peer0.org1.example.com

 

合约名称在链码文件内必须是唯一的。在部署前,一些代码编辑器将会检测是否存在具有相同类名的多个定义的情况。如果存在多个类使用了相同的合约名,无论是显式还是隐式指定,链码都将会返回错误。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章