平价亚洲技术总监贾耀奇分享了他在Boca生态基质框架开发方面的技能和经验。
原文标题:“代码极客波卡生态系列分享会第一阶段:如何开发基于波卡的区块链项目”6032演讲:巴黎亚洲技术总监贾耀奇
2020年10月20日,代码奇才启动了第一阶段“波卡生态系列分享会”我们非常荣幸地以博奇博士的技术总监的身份在亚洲开发加密链。
贾耀奇博士的演讲新颖、详细、引人入胜。为了让合作伙伴们再次回顾这段精彩的演讲,代码怪才特别总结了一下。
如何在波卡开发区块链系统?
作为开发者或区块链从业者,我们都应该感到,从零开始构建区块链是非常困难的。为什么这么难?
图1
你可以看看图1。事实上,要从头开始开发区块链,不仅需要考虑数据库公式算法,还需要考虑与处理各种交易相关的转换函数。同时,如果您想在其中添加一些更复杂或更**的逻辑,例如零知识证明,则需要在开发区关联中添加这些更复杂的算法和函数。
然后我们将实际思考如何利用现有的技术,无论是公链技术还是联盟链技术进行二次开发。事实上,在过去的十年里,特别是从2009年比特币白皮书和以太坊系统15年的推出来看,区块链不仅可以进行支付,还可以在上面部署一些智能合约。在这种情况下,很多开发者基于比特币进行二次开发,而一些有趣的utxo就是这样一个区块链系统的模,也有一些根据以太坊做出的调整。然而,这些系统**的问题是,它们在早期有一个更好的开发框架,用于像比特币或以太坊这样的项目。其实我们都是根据源代码上的变化,所以要求开发人员对源代码的理解是比较高的。同时,由于这些源代码没有作为一个框架进行模块化,因此开发它们非常困难。
事实上,当加文在15年前建立奇偶校验时,我们正在帮助以太坊开发它的rust客户机,以前叫奇偶校验以太坊,现在叫开放以太坊。我们在开发区块链方面积累了很多经验,特别是18年前在跨链项目上积极开发Polkadot,我们吸收和总结了很多开发供应链的经验。从这些经验中,我们提炼并进一步深化,形成了这样一个区块链开发框架。我们称之为框架基底。
A660202图2
我们开发一个类似区块链这样的系统来帮助开发者更快的开发出一个区块链系统,我们称之为区块链系统。如您所见,基板实际上包含了我刚才提到的区块链的许多核心组件,例如数据库层、网络层和可插拔共识协议。
同时我也会提到,开发人员在选择区块链相关的功能后,也只能通过选择一个相关的模块来帮助他们开发。18年来,Gavin在Web3中究竟能在多大程度上发挥作用,峰会发表了这样一个演讲,那就是用了一台全新的苹果电脑,开始安装这样一个与基板相关的依赖,**编译了一个区块链,只用了15分钟。你可以想象,这是18年的不稳定版本。现在基板已经达到了2.0版本,那么在这个版本上开发,其实会有更好的用户体验,是比较快的。回到我们今天讨论的话题,如何在Boca上开发区块链系统。我相信你现在有更好的计划了。实际上,您可以使用开发框架(如基板)来进行开发。
图3
基板开发的系统有多少种部署方式?
图4
事实上,除了poca的并行链或并行线程外,它也可以直接部署到一个独立的链中。特别是在国内有自己独特的逻辑链环境下,也可以利用自己的一些独特的链或链环境来构建自己的应用程序。当然,目前您在底层开发的优势之一就是经过三年的发展,我们可以看到整个波卡生态系统已经成长,开发者也在不断发展。基质的开发生态和开发工具很多。您可以使用Polkadot 。当然,如果它是内置的,还有更好的块浏览器。您还可以使用奇偶校验签名器这样的离线硬件钱包。
如何利用基材生锈?
图5
同时,除了墨水!图5中提到的智能合约。实际上,我们可以用这些智能合约来编写智能合约,并在相应的消费链上运行。接下来,我想和大家分享一下如何利用基材来产生这种锈迹。因为底层它不同于其他智能合约开发,因为你相当于开发一个区块链。虽然底层的区块链,如数据库、网络、控制协议等已经建立起来,但是为了满足自己的特殊需求,比如游戏区块链或者部分付费的链,这个核心的业务逻辑还是需要你去开发的。
图6
这样,我们就需要这种抽象的运行时来进行开发。如图6所示,由于基板与我们通常开发的智能合约不同,因此它有一些我们需要记住的开发策略。例如,第一点是在基板运行时,如果发送外部事务,或者将其作为事务处理,如果在事务处理期间出现问题,则不会回滚事务状态的更改。
如果事务未成功执行,则其状态将回滚。这就需要我们在开发抽象运行时时自己验证这样的逻辑,对吧?然后写下来。
接下来,你可以看看这些页面上的图片。在编写这个运行库或相应的逻辑时,您需要填写自己的代码。您可以看到,模块定义通常包括如何定义存储事件和错误,并且有一些相关的函数。
图7
为此,如果你想参考其他相关性状,因为整个底物都是用锈写的,有些性状也会用到。如果您想了解更多关于锈蚀相关的信息,您可以在互联网上查看相关的锈蚀课程,或者加入我们的底物过程中,我们将介绍一些与此相关的锈病。然后,对于存储,您可以看到有一些相对简单的类和最简单的方法。你可以学习这些简单的类或例子,你已经有。然后,根据您的实际情况,您可以更改相关变量的名称来执行此操作。同时,它类似于编写智能合约。在执行某些操作时,必须触发或发送事件。然后你也可以在这里定义一个事件。
当然,这里还有一个地方,即decl_u模块,实际上是定义自己对应的运行时函数,我将在**提到它基底.dev在这样的网站上有很多种教程。您可以按照教程进行学习,并做一些简单的示例,以深入学习。如何根据这些模块定义相应的事件存储和功能,完成对这样一个运行时和相应逻辑的定义和操作。
基板应用链与智能合约有什么区别?
在这里,我们可以简单地类比底层应用程序链或运行时与智能契约之间的差异。
图8
我们都知道,写智能合约,特别是对于以太坊上的坚固性这样的智能合约,往往是由于坚固性和以太坊本身的局限性,比如存储容量低、手续费高。同时,由于它的稳定性,它有更多的限制,并且它可能只会更频繁地操作整数。
这就是为什么以太坊上流行的应用程序都与通正有关,而不是Web3.0。
当你使用基板进行开发时,没有这样的问题。
因为当你使用底物开发时,整个链都由开发人员控制。因此,当您正在开发时,无论是链上的数据还是链下的数据,或者是相应的坚实度不具备的一些接口,基板都可以提供一个接口。
您也可以看到,基板本身的吞吐量相对较高,因此它可以为应用程序处理事务和逻辑提供更多空间。
同时,基板本身也将提供一名非链员工的非链工作者,这可以帮助基板应用开发人员更快地处理相关的链外数据,实现对链外数据的链上处理,从而实现链上和链下的处理。
无缝链上无叉升级
熟悉区块链行业的朋友们都知道,过去,包括一些联盟链项目在内的所有公链项目,如果想升级,都需要硬叉。像比特币,尤其是以太坊。众所周知,16年来,由于“刀”事件,由于矿工的不同意见,经典以太终于与以太坊分离。
为什么我们有连锁升级?这实际上涉及到计算机或编程行业。
事实上,我们默认会出现这样一种现象:没有任何程序员可以编写没有漏洞的代码。
无论是传统应用程序、区块链应用程序还是智能合约。通常,编写的代码越多,您可能创建的安全漏洞就越多。
回顾过去几年,我们会发现各种漏洞,无论是DIF还是链条本身,都会导致很多用户的各种财产损失。
这使得区块链本身需要更好的升级,无论是智能合约的升级还是链本身的升级。
但是,如果我们经常使用这个硬叉进行升级,一开始就赶不上它,因为升级需要“每个矿工在很短的时间内将自己的软件升级到**版本,然后我们可以在某个时间升级到这个版本,**从旧链切入新链”的逻辑。
但是,由于硬分叉,这种升级模式非常昂贵,并且可能会导致您自己的链从其他链中分叉出来。
然后基板在链上有一个无缝升级。
实际上,它是向链提交一个与开发者对应的运行时,然后对链进行验证者投票。您可以看到,这实际上与连锁治理有关。
在链上投票完成后,如果绝大多数人同意相应的升级,那么开发者提交的一个运行时就会写入整个链的运行时中进行相应的升级。
有了这样的无分叉链升级,可以保证区块链开发者能够更安全地运行自己的区块链。
即使有一些问题,也可以很快修复或纠正。
图9
链外工作者
众所周知,以太坊上有各种各样的预言机机器,比如chainlink。
在过去的半年里,预测机受到了各界人士的广泛关注。
因为以太坊本身无法通过链上和链下两个渠道,如果链上想获取链下数据,比如各种代币价格,就需要这个预言机把数据发送到链上。
而基板本身就是下链机的工作原理——事实上,链中的这些节点都会通过离线机获得链下相应的数据。
图10
然后这些验证节点就可以直接处理链上的数据。
今后我们可以在链上等处理结果上达成共识,以保证链外信息能更快、更方便地获取,并能进行相关计算。
例如,在波卡或基质的生态中,就不需要这样一个单独的预言机。因为离线机对应的接口已经写得比较好了。
同时,您也可以看到相应的场景:除了我刚才提到的,我想获取一些链外数据;还有一些使用离线机器的场景。
例如,我们可以使用链下机器完成一些比较大的计算,然后将结果返回给链上相应的验证器。
以下是一些与下链机相关的学习资源,可以作为参考。
图11
如何更好地进入波卡?
我已经讨论过Boca是如何使用substrate进行开发的,substract编写的运行时是什么,以及substrate的优势。
那么您可能还想知道:如果您使用基板开发区块链系统,我如何才能更好地访问Boca?
您可以查看图12,它实际上是poca的一个框架。
熟悉Boca,我们都知道Polkadot最核心和最核心的部分叫做中继链或中继链。中继链中有许多相应的验证节点,称为块验证器。
图12
如果不同的链环被连接到中继链中,它们将作为一个平行的链环被放入中继链中。
对于很多大区块链系统,如比特币或以太坊,如果想接入波卡,首先需要通过网桥调整到一个平行链,然后通过平行链与其他平行链进行通信。
作为并行链,其内容或块的验证由中继链的相关验证节点完成。
然后我们会问,并行链需要什么节点?如图所示,需要一个称为collator的节点。
这些节点负责收集每个并行链对应的块,然后提交给中继链中随机选择的块验证节点。这些块验证节点将验证并行链中的相应块。
同时,用基板编写的区块链还需要另一个叫做积云的模块。你可以用底片写这个积云,然后再做一点改进。你可以把积云连接成平行链。
当然,并不是每一个基片链都可以连接到平行链、中继链或poca-这涉及到一个平行链槽的拍卖。
图13
Web3基金会如何支持波卡的生态发展?
波卡生态的项目尤其活跃。可以看出,无论是基础还是平价,我们对波卡生态工程的支持度都很高。
例如,3月份,我们已经在Web3基金市场发行了100多个对应于grant支持的Web3项目。
同时,我们还将有一个建设者计划,帮助社区中一些相对成熟的团队为他们提供技术和商业市场的服务。
当然,作为不熟悉技术的社区成员,您也可以加入我们的大使计划,帮助推广波卡相关的技术和理念。
图14
在亚洲或中国,你可以看到,从今年5月开始,我们与万向合作做Web3训练营,孵化了15支队伍。
这15支队伍大多已接入相关测试网和主网。然后融资非常受欢迎。
在未来,我们也希望有更多更好的队伍加入我们的Web3训练营。我们将提供技术、业务和市场相关支持。
全世界有100多个团队开发了基于基底的区块链。
作为亚洲团队或中国团队,您可以看到,在过去的一段时间里,我们为您提供了各种与中文基板开发相关的材料。
无论是专栏、波卡官方账号,还是线上线下活动,包括哔哔声、现场直播,我们都欢迎您搜索底层,或搜索我们的社区,并积极加入我们的活动。
同时,我们还有一些**的活动——例如,月底我们将在中国举行第一届Web3大会,主题是开放、开源和互联网。
我们将邀请国内外嘉宾——不仅是区块链产业或波卡生态项目和嘉宾,也邀请对Web3整个领域贡献更大的国内外知名嘉宾,分享他们对Web3的理解和对Web3生态的贡献。
图15
如果您感兴趣,您可以学习这样的教程并体验新的substrateframework—无论是链上的升级还是在链下工作的机器。我们提供各种模块来构建自己的区块链。
今天我很高兴收到密码高手的邀请。今天我为你分享了这么多。我希望将来我们能更好地发展和融入我们的区块链产业,无论是波卡生态还是区块链生态。谢谢您!
问答
问题一,网易区块链创新业务负责人胡志敏。
胡志敏:如果作为一个开发者,如果你想在波卡生态和基于次级税率的基础上开始区块链业务,你需要一些启动资金。我想知道Polkadot官方基金对区块链应用的支持策略,比如什么样的项目可以通过官方投资来实现?
贾耀琦博士:我刚才谈到了波卡生态机械设备发展的相关项目和团队,基金会和平价会提供相对较大的支持。
在资金方面,基金会根据与项目相关的资格进行评估。
你可以申请一个名为web3grant的项目。对于一些比较好的项目,基金会提供了大约30000美元的支持。
当然,将为更复杂的项目提供更高的资金,但审查需要更长的时间。
对于一些有产品或测试网络的相对成熟的项目,我们可以申请一些成熟的、相关的项目。例如,建设者计划或我们的Web3训练营,Web3训练营。我们将为这些项目提供技术市场和业务相关的指导和帮助。
同时,我们将更加积极地联系中银生态,支持我们的相关投资者或国内外投资者,帮助观察这些项目,并进行一些相关投资。
第二题和第三题来自清远,是《铸币密码》的合著者,毕业于北京大学,有12年的程序开发经验。
问题二
青环:如果开发了平行链,后续平行链进入槽的成本是多少?
贾耀奇博士:第一个问题,如果开发平行链,槽的成本是多少?目前,我们还没有一个非常明确的计算。例如,大约有多少个点可以到达插槽。但目前-因为我们的插槽不是直接出售的,他们需要用户锁定自己的一个网点-事实上,我们仍然鼓励不同的团队更好地发展自己的社区,在未来,我们可以通过众筹或平行链发展类似于他们自己的平行链的盈利能力,然后我们可以使用他们的资金销售插槽。
问题3
清远:墨水的使用!coinverse的智能合约开发项目从开发工具到智能合约测试再到部署都相对繁琐。未来如何降低这些发展的门槛?
齐耀佳:博士!现在它已经发布到第三个版本。你可以去看看具体情况。
我们也在开发和改进墨水的相关模块和相关组件!让更多的开发者可以使用墨水!技术来更好地开发它们。
你现在是,也许有些开发工具还没有到位。但是我们的Web3基金会已经给一些开发工具团队提供了一个类似于ReMobe的ID,以帮助开发者用墨水开发。
问题4
Polkadot community 1组成员:必须将poca或Substrate的应用程序开发用作并行链吗?因此,每个应用程序都会开发一个链,而并行链中缺少槽又如何呢?
贾耀奇博士:除了平行链外,还有其他方法。
第一种方法是,我刚刚提到过,您可以通过并行线程,然后将其访问到系统中。
并行线程不需要平行链团队垄断一个槽超过半年或两年。它只对不同的区块按需出价,然后将自己的区块写入poca系统。
当然,有办法。如果您只是构建一个更简单的应用程序,您可以尝试使用ink编写智能合约!或SOLidity,然后您可以在智能合约的并行链上部署自己的智能合约或相关应用程序。智能合约的并行链可以用来调用和向其他并行链提供数据,也可以利用Boca对应的跨链优势。
此外,您还可以构建一个单独的substratechain。将来,我们可以用某种方式将一些并行链桥接起来,这样我们就可以将它们自己链上的数据与其他并行链进行通信。
一般来说,以上三种方式,再加上拍卖平行链槽,再获得波浪牌。访问poca系统有四种方法。
本次活动由cryptogeek、Star dai和parity主办;tokenclub、crypto capital和patrac共同主办;媒体支持包括gold finance、Mars finance、chain news、carbon chain value、blocklike、bajiute等,此外,连锁节点、currency Hu、**仓库、doter等也为我们提供社区支持。
文章标题:如何开发基于Boca的区块链项目
文章链接:https://www.btchangqing.cn/131992.html
更新时间:2020年10月28日
本站大部分内容均收集于网络,若内容若侵犯到您的权益,请联系我们,我们将第一时间处理。