我在读这里:
在默认情况下,集中式管理员所有的dapps都是完全分散的,但这并不意味着如果您愿意的话,它们不能拥有某种类型的中央管理器。也许你想要有能力铸造更多的硬币,也许你想禁止一些人使用你的货币。您可以添加任何这些功能,但问题是,您只能在开始时添加它们,因此所有令牌持有者在决定拥有该功能之前都将始终准确地了解游戏规则。
(强调地雷)
在启动dapp时,管理更改的最佳实践是什么?假设你只发了1000件东西,后来发现了一个bug,需要增加到1500件,你该如何处理呢?
我看到这份文件上有关于.
中央铸币局假设你想改变流通中硬币的数量。
但假设你没有“只在开头加它们”。现在怎么办?这与上面的陈述是如何一致的,你是如何管理这些变化的?
发布于 2018-11-14 19:12:14
最基本的想法是,你的合同必须支持你将来可能要做的所有改变。因此,如果您有一些静态数字,但没有功能来改变它,它将始终保持不变。因此,如果您有可能希望在未来更改的数字,添加功能来更改它们。
但是,这并不一定意味着您必须明确地知道您希望在未来更改哪些部分。这是因为所谓的可升级契约(参见https://medium.com/quillhash/how-to-write-upgradable-smart-contracts-in-solidity-d8f1b95a0e9a )。可升级的契约只是一种设计技巧/模式,但是如果您想要使用这种模式,则必须在开始时添加对它们的支持。
如果留给您的合同不适合您的目的,并且您不能扩展/修改它以适应您的目的,那么您唯一的选择就是编写一个新的合同,并以某种方式迁移每个人使用新的合同。根据合同的类型,这可能是不可能和琐碎之间的任何东西。
https://ethereum.stackexchange.com/questions/62363
复制相似问题