什么是DAPP?如何开发一个新的区块链项目?

什么是DAPP?如何开发一个新的区块链项目?

经过近几年移动互联网智能手机的普及,相信几乎每个人都知道什么是APP(Application的缩写)。一转眼时间进入了区块链时代,一个新名词DAPP(Decentralized Application)应运而生。经常看到走在技术前沿的开发者问:什么是DAPP?如何开发一个DAPP?为什么要开发DAPP而不是APP?详细讨论。本文主要讨论DAPP的一些基本概念

一、什么是DAPP

根据David Johnston 在文章DavidJohnstonCEO/Decentralized Applications 中的定义,一个应用程序只有满足以下所有条件才能称为DAPP。

应用程序必须是完全开源的、自治的并且没有任何单一实体控制应用程序的大部分令牌(Token)。应用必须能够根据市场反馈和技术要求进行升级,但只有在应用的用户达成共识后才能进行升级;

应用数据必须加密存储在公共区块链上;

应用必须有代币机制可以使用现有代币,也可以发行新的内置代币),矿工或应用维护节点需要获得代币奖励;

应用代币的生成必须基于标准的加密算法,有价值的节点可以根据该算法获得应用代币奖励。

按照以上标准,比特币和Asch都属于DAPP,以比特币为例:

比特币代码完全开源,不受中央机构控制,所有比特币交易等信息都可以在区块链上找到;

比特币的代币奖励机制由预先构建的加密算法决定,无法修改。矿工因维护比特币节点的安全和稳定而获得奖励;

比特币区块链上的所有数据修改都必须得到大多数用户的同意(共识)。

所以比特币是一个DAPP,Asch是一个DAPP,基于Asch开发的【CCTIME】(CCTime加密货币通讯)也是一个DAPP。不同的是,有些DAPP扮演着操作系统角色(比如Ethereum、Asch),基于这些平台可以很容易地开发出有特定需求的DAPP,而有些DAPP(比如CCTIME)则是特定的应用。但他们都符合上述标准。

2. DAPP的核心要素

您可以创建一个完整的区块链系统并从头开始开发您自己的应用程序。这相当于开发一个新的区块链项目,既费力又对个人能力要求高。如果你只是一个普通的开发者,想要基于区块链开发自己的应用,那么选择一个成熟的区块链应用开发平台就可以了。这些平台一般都提供完备的接口和开发工具,你只需要关心业务逻辑及其实现。关于区块链的底层,这些平台会帮你处理。

1.开发平台

目前最流行的开发平台是以太坊以太坊是目前世界上仅次于比特币的第二大区块链项目,它就像一台遍布全球分布式计算机,你只需要将你的应用部署在以太坊上,应用的运行即可由所有以太坊节点保证。应用程序的运行需要支付交易费(GAS)。缺点是你需要学习一门新的语言,Solidity。

另一个建议是基于作者团队开发的Asch(中文名称为Axi)。只要掌握JavaScript,就可以基于Asch开发DAPP。 Asch采用侧链架构,每个DAPP都是一组侧链。侧链可以有独立的区块链和节点网络。不同的DAPP 不会相互影响。与以太坊不同的是,Asch 系统上DAPP 数量的增加不会增加主链的负担,是一种更先进的机制。

2. 共识机制

共识机制决定了运行DAPP 的各个节点如何达成共识并获得奖励。目前最常用的共识机制有POW、POS 和DPOS。 POW 根据计算资源分配奖励。目前,比特币和以太坊都采用这种机制(但以太坊可能稍后会迁移到POS)。 Asch采用PBFT优化的DPOS机制。核心系统由101个客户端节点组成。客户端是社区选出的可信账户。得票最高的101 个客户负责生产区块。未进入前101 名的账户称为候选人,当他们获得足够的选票并在未来进入前101 名时,他们将成为正式受托人。基于Axi开发的DAPP默认采用这种共识机制,开发者可以自行修改决定使用哪种共识机制。

3.代币分配

一般DAPP都会内置代币(Token),而

更多用户参与到DAPP的维护与使用中的话,就需要考虑好如何把代币分发到用户手中。目前最常见的有以下几种方案

挖矿:以Bitcoin为例,任何拥有计算资源的人都可以加入到Bitcoin的挖矿中来,通过挖矿奖励来获取新的Bitcoin。

ICO: 可以简单理解为众筹。通过收集市面上已经成熟的其他代币,根据一定比例兑换为本DAPP内的代币来完成。Ethereum就是按照 1BTC/2000ETH的比例通过ICO众筹到了很多BTC作为起始资金。这种分发方式国内已被禁止。

空投: 将代币免费分发到用户手中。持有其他代币的用户只需要完成一个简单的绑定流程,就可以得到代币。最近的案例有CCTIME空投,具体方式可参考[CCTIME官网](CCTime 加密货币时讯)。

私募:这个就跟找投资一样,依个人能力而定了。

三、DAPP的生命周期

DAPP的生命周期分为三个重要的阶段

1. 撰写白皮书

编写白皮书是DAPP开发的第一步,它描述了DAPP的技术原理、解决的问题和特点等。白皮书是DAPP开发的基石,社区的反馈也可以在后期的更新中得到体现。

2. 分发代币

分发代币是DAPP开发的重要环节之一,可以采用上一章节所描述的代币分发机制。

3. 开发DAPP,逐步进化完善

DAPP发布后,健康发展的DAPP将吸引更多拥有各种技能的用户加入到社区,共同维护DAPP的发展。随着社区的壮大,早期开发者在社区中所占的比重逐渐减小,DAPP的发展交由社区整体进行运营和更新。比特币和比特股等项目已经证明,去中心化的社区可以推动项目的持续发展。

四、为什么要开发一个DAPP?

目前,社会对DAPP开发的关注刚刚开始,在市场上还难以看到流行的DAPP应用。但随着区块链技术的发展,传统的C/S模式可能会被颠覆,开发者也不必再购买云服务器部署自己的应用。区块链开发平台为开发者提供了一个基于全球服务器,7*24不间断服务的应用平台,使得应用部署到区块链上变得轻而易举。此外,DAPP代币机制的存在,也使得开发者能够更容易地基于代币获得价值回报。我们相信,在不久的将来,DAPP将超越传统APP,在人们的社会生活中扮演越来越重要的角色。

大家觉得怎么样呢?欢迎在评论区留言,让我们一起探讨。同时,记得点赞哦!

获取了解“区块链DAPP系统”最新详细方案关注私信

(关注我带你走进商业领域商业模式设计、源码定制开发、本文编辑刘-lrjj003)

版权声明:区块链游戏 发表于 2023-05-27 5:00:07。
转载请注明:什么是DAPP?如何开发一个新的区块链项目? | 零零洞洞

暂无评论

暂无评论...