以太坊(Ethereum) 分布式应用 DApp

分布式应用(DApp)是运行在区块链之上的应用程序,支持区块链网络中用户之间的交互。

DApp(decentralized application)的后端代码运行在区块链网络上,普通互联网应用的后端代码运行在集中式的服务器上。

DApp可以使用任何语言编写前端代码和用户界面(就像普通应用程序一样),前端调用后端实现实现功能。

如果一个互联网普通app可以表示为:

App = 前端 + 后端服务器

则一个DApp可以表示为:

DApp = 前端 + 智能合约(运行在区块链网络上)

如下图所示:

以太坊(Ethereum) 分布式应用 DApp

DApp这个概念流行于 2017 年末,大部分 DApp 都是基于以太坊开发。到现在为止,平均每天有 10 多个 DApp 被提交到 DApp 统计平台 http://dappradar.com 上。

http://dappradar.com 列出了以太坊上最优秀的那些 DApp,并且从不同的维度对 DApp 进行评分。

1. 什么是 DApp

关于DApp的标准定义,现在业界并没有达成一个很好的共识。简单来讲,DApp是Decentralized Application 的简称。DApp可以是一个网站,也可以是一个手机上的应用。只要支持应用的主要业务逻辑和数据都是基于区块链的,那它就可以称之为一个DApp。

每一个DApp都运行在一个基于全球节点的节点网络上。它主要有以下几个优点:

1) 永不宕机

因为DApp是运行于区块链上的,而区块链是基于分布于全球的服务器节点来运行的。所以只要区块链不出问题,DApp就可以一直在线。

2) 没有审查

这个也是借助于区块链的特点,任何的审查机制在DApp上都行不通。

3) 开源

DApp的代码是开源的,任何人都可以去查看它的原始代码。

2. DApp的分类

目前DApp名目繁多,但大体可以分为以下几类:

1) 去中心化交易所

FolkDelta 是去中心化交易所的一个典型应用。目前每天有4000多用户使用。在FolkDelta上,用户可以对一些流行的Token进行兑换。

2) 游戏

去年最火的游戏是以太猫,最流行时一度占有了以太坊网络的20%的流量,造成了以太坊网络的拥堵。从那以后,各种游戏如雨后春笋般冒了出来。把游戏跑在区块链上的好处是数据永不丢失,也不会被盗走。目前比较流行的游戏有:Etherbots, EtherCraft等。

3) 赌博

普通的赌博游戏必然会遭遇庄家抽成、可能性的作弊等情况。但如果把这个游戏搬到区块链上,前面所说的问题就不会出现了。

4) 其他

目前最流行的DApp基本都属于前三种,还有更多的DApp正在开发中。不过区块链以及基于区块链开发DApp都还处于比较早期的阶段,但它们的进化速度肯定会越来越快。让我们拭目以待!

下一章:以太坊 账号(地址)

以太坊(Ethereum) 账号(地址):以太坊(Ethereum)网络中,有两种账号:外部账号– 用户使用的账号;合约账号 – 智能合约使用的账号,每个智能合约都有一个账号。这些账号,都被称为 状态对象/state object,构成了以太坊网络的状态。外部账号的状态是账户余额,合约账号的状态是内存与账户余额。