当前位置:首页 > 区块链新闻 > 正文

模块化在区块链平台中的重要性

来源: 互联网时间:2019-03-09 17:00:01

模块化是指一个系统能够分解成可以分离和重新组合的组件。最好的软件开发工具通常是高度模块化的,允许重用“程序集”或“模块”。这一原则是Java、c#和Go等开发框架的核心。

模块化促进了创新。当创建一个新的web应用程序时,大部分运行的代码实际上都在外部开发的包中;无论它们是数据库连接、页面呈现引擎、输入验证器等等,开发人员都可以非常容易地构建一个新网站概念的原型。

加密货币

然而,如果你去看看最珍贵的加密货币代码库——比特币核心存储库,你会发现它非常不灵活。非模块化代码通常以长文件为特征,类的单个实现通常依赖于其他的具体实现。以比特币核心验证为例并不是说只有比特币存在这种情况。大多数区块链节点存储库,如Go Ethereum也完全没有考虑到灵活性。

现在需要注意的是,在比特币的例子中,模块化不是优先考虑的。如果您相信您正在构建未来的单一“货币”,那么为什么要让其他人更容易地使用您的代码进行构建呢?比特币核心是高度集成的,但它经受住了时间的考验,并且行之有效。这不是对比特币核心代码库的批评。

尝试使用区块链

随着区块链被引用为所有问题的答案,许多项目开始尝试不同的节点实现。特别是在敏感数据和私有链,或者在外部数据是链操作的核心的情况下,项目发现基于智能合约的方法不允许它们具有足够的灵活性。不幸的是,直到最近,为了创新,开发商正在剥离像比特币这样的集成节点,或者从零开始创建新的节点。

这两种方法都很痛苦、耗时,而且容易出错(不安全)。

当一个拥有全新功能的区块链网络可以像这样快速转移时,这个领域将真正繁荣起来。

Stratis——一个模块化平台

对我来说,最令人兴奋的事情是,我们正在考虑以完全不同的方式建立区块链。不同的共识算法、智能契约执行器、钱包和双向挂钩实现都是同一代码库中的特性。

目前你可以运行的代码库:

· 比特币(PoW)节点

· Stratis (PoS)节点

· Cirrus (PoA +智能合约)节点

此外,由于节点的灵活性,我相信我们可以在几天内为比特币现金、、Private、Doge、Litecoin等构建完整的节点集成。在对模型和其他特性进行了一些尝试之后,我们可以对其进行扩展,以便更容易地支持更多的链类型。

当你在NET Core中创建一个新网站时,你可以预加载一个模板,并根据你的需要快速调整组件,在一天之内完成一个新的web应用原型。我们希望,有了Stratis的开发者能够做同样的事情,但他们自己的区块链网络。

IFullNode node = new FullNodeBuilder()

.UseNodeSettings(nodeSettings)

.UseBlockStore()

.UseMempool()

.AddRPC()

.AddSmartContracts()

.UseCLRExecutor()

.UseApi()

.Build();

免责声明:

1.本文内容综合整理自互联网,观点仅代表作者本人,不代表本站立场。

2.资讯内容不构成投资建议,投资者应独立决策并自行承担风险。