3月4日 道易程设计技术讨论会议 记录

 3月4日,道易程技术团队召开了技术讨论会议,由周朝晖老师主持,针对前端开发人员提出的几个问题进行讨论,由黎兆解释当前合约的设计。会议的目的是讨论当前的合约设计是否有待改进的地方,给前端开发人员、基于道易程平台的第三方合约开发者及用户提供更简便的使用功能。

1、dao的 logo 修改功能

当前合约的设计为:

dao的logo 修改需要分两步走, 针对每个dao, 先安装logo修改程序的扩展,然后才能利用此扩展进行修改dao的logo。这两步均需要提案,投票,执行。

前端开发人员观点

过程太繁琐,不利于用户操作。 道易程应该具备修改logo的功能,不需要安装扩展。

合约设计者观点

修改logo (已经设置)属于第三方的的应用(凡是修改都属于第三方应用),需要安装修改扩展,并且要大家投票通过。

讨论结果

这是区块链与传统软件设计理念的冲突,区块链的数据一亘设置,是无法修改的。而传统软件是可以随时更改。

2、第三方扩展的实施方法

当前合约的设计为:

根据第三方合约,按道易程规则编写对应的扩展合约,然后在道易程平台上进行安装。

前端开发人员观点:

扩展合约与第三方合约的藕合性高,完全是一一对应,所有规则都需要代码来实现。增加和扩展的难度,不利于扩展的推广和应用。建议用配置信息来代替合约,降低扩展难度。

合约设计者观点:

无法实现,因为 solidity语言对字串的处理很弱,会消耗大量gas。配置信息需要根据字符串内容进行解析。而solidity语言目前不胜任,所以无法做到完全由一个代理合约根据配置信息来调用另一个合约的函数。

讨论结果:

第三方的扩展,完全是第三方的业务问题,道易程不需要干预。也无法按配置信息来实施扩展。

3、道易程token 支付功能

当前合约的设计为:

没有设计。

前端开发人员观点:

象传统的支付功能一样,道易程提供支付接口,道易程平台上第三方的支付需要经过支付接口进行token的支付。

合约设计者观点:

token的支付与传统的支付方式完全不同。道易程中的token 支付完全由第三方编写,根据eip协议进行两者间的转帐 ,不需要道易程提供支付功能。

讨论结果:

属第三方业务问题,完全由第三方设计,不需要道易程设计

4、通用合约(代理合约)设计问题

当前合约的设计为:

没有设计。

前端开发人员观点:

在前端的开发测试中,经常会碰到,由于合约的更改,重新发布等而需要更改对应的合约地址和abi。前端开发与合约开发的藕合性太高,希望能降低藕合性。建议:设计一个代理合约,通过此合约完整其它合约的调用。

合约设计者观点:

可以根据第三方合约的函数格式做代理合约,代理合约的地址不变,实际合约的地址可以改变, 前提是已经确定了合约的函数格式,对未知/未设计的函数无法代理,所以无法做到由一个代理合约完成所有合约的调用。

讨论结果:

无法设计

社交媒体登录设计计划
3月8日 社区会议
 

Comments

No comments made yet. Be the first to submit a comment
Already Registered? Login Here
Guest
Thursday, 18 August 2022