主页 > imtoken钱包苹果版用不了 > 以太坊开发者

以太坊开发者

imtoken钱包苹果版用不了 2023-03-10 06:20:33

正在阅读本文的你应该是被区块链技术所吸引的开发者或极客。 相信您了解区块链的技术原理,并渴望弄清楚这项技术将如何影响您和您的开发技术栈。 如果你需要更基础的区块链技术介绍,可以阅读比特币和以太坊的白皮书。 本文的目标是:阐述区块链项目开发与现有软件开发模式的区别。 提供背景信息以帮助您更好地思考该领域的机遇和挑战。 提供区块链领域的基础资源和资料,助力区块链项目的发展。 发展模式的改变 互联网的网络效应产生了大量的中心化数据,推动了互联网应用的发展。 得益于共享和开放的网络协议(如 TCP/IP、HTTP),Yelp、Facebook 和亚马逊等公司能够存储他们的用户——当然还有用户生成的数据——集中在他们自己的服务器上。 这样一来,这些互联网巨头除了相对于用户量小的公司有优势外,还可以100%控制自己拥有的海量用户数据如何转化。 用数字货币投资人 Joel Monegro 的话说,现有的互联网模式让大部分价值被应用层捕获,而应用层的基础,即底层协议层,却赚取了很少的利润(即“肥”)应用层,“瘦”协议层模式)。 相反,区块链技术带来的价值分配模式,可以理解为协议层“胖”、应用层“瘦”的模式。

正是加密货币的创新使这种模式成为可能。 正如 USV 的 Albert Wagner 所说:“一直以来只有一种方法可以从协议中赚钱,那就是根据协议开发软件并出售(当然最近已经转为租赁)......但是,加密货币提供了一种直接在协议层变现的可能,随着基于该协议的应用越来越丰富,底层协议的变现能力也会越来越强,体现在更高和数字货币的价格更高。” 过去,那些互联网开放协议的开发者,也就是DARPA网络的研究人员或者那些无偿贡献者,不会因为开放协议的发展或者基于它的应用越来越多而获得直接的经济回报不同的是,现在的协议开发者可以直接发行数字货币,比如比特币或者以太坊,而这些数字货币直接代表了去中心化协议的价值,Joel Monegro认为区块链技术带来的这种范式转变将促使开发者重新- 检查他们的应用程序。“开放数据共享和内生激励机制的结合将最终结束“赢家通吃”的市场现象。 这将改变应用层的游戏规则,催生出一批具有新商业模式的公司。 而这些公司业务模式的差异,将主要集中在协议层。” 前面关于以太坊的讨论让我们得出结论,区块链技术带来的创新让开发者可以直接在协议层获取价值。

接下来,我们将继续探讨区块链技术如何向开发者友好的方向发展。 八年前,出现了一种不需要中心化金融机构背书的数字货币。 它现在被称为比特币。 最初,开发人员试图通过将数据直接存储在比特币区块链上来构建应用程序,结果证明这是非常低效的(Joel 的这篇文章就是一个很好的例子)。 其中一位开发者 Vitalik Buterin 受够了比特币对新特性极其谨慎和保守的态度,于是他开发了一个新的区块链平台——以太坊(Ethereum)。 比特币的初衷是创造一种新的价值存储媒介。 以太坊是实现一个图灵完备的区块链开发平台。 在以太坊网络中,开发者可以使用Solidity编程语言编写智能合约,这些合约由以太坊虚拟机(EVM)运行。 从Vitalik Buterin的例子不难看出以太坊帮手,开发者可以开发一个全新的区块链网络来满足他们的各种需求。 当然,从头开始开发一个新的区块链网络也有缺点,比如从头开始构建开发者社区。 但是直接在以太坊这样成熟的网络上开发,就没有这个问题。 而一个显着的区别是,基于区块链网络开发应用程序时,开发者不仅是应用程序的所有者,同时也是底层协议繁荣的直接受益者。

sitecsdn.net 以太坊和以太币的关系_以太坊帮手_以太坊联盟和以太坊的关系

去中心化应用程序(Dapps)、代币和智能合约 如今的开发者已经基于现有的区块链协议(如以太坊)开发了满足不同用户需求的去中心化应用程序(dapps)。 开发者一般在dapps中发行自己的代币(token),用户可以通过消费token让dapps“执行”相应的操作,实现某种“功能”。 Token其实并不神秘,你可以把它想象成人们在商城的电玩世界里购买的游戏币。 这些通过“智能合约”实现的“功能”,让dapps通过收取一定的费用(代币),可以在不依赖第三方的情况下,对外提供可靠的服务。 拿游戏币打个比方,只要你有足够的游戏币,你随时都可以把游戏币放入篮球机里玩游戏! 一般来说,代币的总量是固定的,所以随着一个dapp提供的服务越来越普及,按照简单的供求原理,代币的价格肯定会上涨。 基于这个逻辑,dapp 开发者通常通过出售代币(而不是通过传统的融资渠道)来筹集开发资金,这个过程的另一个众所周知的名字是 ICO(初始硬币销售)。 看到这里,你可能会问,“为什么每个 dapp 都发行一个专用代币,而不是使用现成的代币,比如以太(eth)?”。 这不难解释,因为专用代币有利于特定应用生态中的小微经济体。 也就是说,专用代币可以根据应用的具体功能和需求灵活调整,让代币更好地为dapp服务。

以太坊帮手_以太坊联盟和以太坊的关系_sitecsdn.net 以太坊和以太币的关系

说到这里,就不得不提到以太坊(Ethereum)。 以太坊就是这样一个允许dapp开发者轻松发行代币的平台。 早期机会有了以上对dapps底层机制的理解,你应该思考这样一个问题:去中心化会给你的用户带来什么价值? 我们希望大家先把上面的问题想清楚,而不是一上来就急着把已有的产品“去中心化”。 例如,Augur 就是一款依托区块链技术实现预测市场的产品。 为什么要用区块链技术来实现? 正是因为这种技术带来的鼓励诚实的经济激励,分散在世界各地的参与者才能做出更准确的预测。 在开发者层面,区块链技术也带来了技术栈创新的机会。 现有区块链的开发者喜欢将当前情况与互联网早期进行比较。 当时各种开发工具和框架还不完善,而现在的区块链开发领域也正是这样。 来自 Stream 的 Ben Yu 认为这对开发者来说是一个新的机会:“很多看似容易做的基础工作是迫切需要做的。对于 2017 年的互联网来说,还有很多基础设施工作要做” 由于区块链技术的创新,许多人看到了创建全新的去中心化网络堆栈的机会。

sitecsdn.net 以太坊和以太币的关系_以太坊帮手_以太坊联盟和以太坊的关系

这个新的网络堆栈将不再依赖中央政府或公司。 传统的网络栈由TCP/IP、DNS、数据库、Web服务器、认证系统和CDN等基本组件组成。 现在,我们有机会通过像以太坊这样的平台以去中心化的方式重新实现。 传统网络堆栈中的各个组件。 “不可篡改”带来的挑战 就像早期的Javascript技术一样,区块链技术的演进必然伴随着各种挑战。 最大的挑战之一,也是区块链技术最突出的特点,就是“不变性”。 由于这个特性,开发者无法更改底层区块链,也无法更改顶层智能合约,并且很难对基础库和合约进行版本控制。 Parity 最近的一个漏洞直接导致价值 1.5 亿美元的以太坊被锁定。 像这样的事件不断提醒我们构建面向未来的架构的重要性。 对于这种不可篡改的修改对业务安全的影响,来自0x项目的开发者Brandon Millman与我们分享了他的看法:“与传统项目相比,在这个领域开发意味着你要更加小心。因为任何问题将直接影响到用户数字资产的安全,长期以来,区块链技术以其对私有财产的强大保护而广为人知,也就是说,只要你安全地控制着你的私钥,理论上没有人可以窃取你的资产。

sitecsdn.net 以太坊和以太币的关系_以太坊联盟和以太坊的关系_以太坊帮手

但该领域更多的窃取并不是通过直接窃取用户的私钥来进行的。 骗子通过诡计让用户将数字资产转移到自己的钱包中,最终达到盗窃的目的。 “开发者,尤其是那些习惯了快节奏开发的初创公司,不得不停下来思考如何在速度和安全之间找到平衡点。正如 Stream 的 Ben Yu 所说:“开发者普遍提倡的一个原则是:move快速打破事物。 这句话在区块链领域只有前半句是正确的。 这个领域发展很快,所以你必须快速行动才能不被竞争对手超越,但打破东西意味着损失数千美元。 “区块链领域的发展需要更加周密的规划。由于开发者缺乏对整个系统的集中控制,dapps很难像传统应用那样快速热修复。相反,在区块链的世界里,如果你想做系统级的改变往往意味着整个协议的硬分叉 以太坊的局限性 除了上面提到的“不可篡改”带来的挑战,开发者还可能会遇到一些其他的以太坊网络的限制,例如以太坊网络不支持通过外部调用访问自身区块链之外的数据,开发者需要依赖第三方数据提供者将外部数据注入智能合约,这种数据提供者通常被称为预言机。

以太坊帮手_以太坊联盟和以太坊的关系_sitecsdn.net 以太坊和以太币的关系

此外,以太坊的性能不足以支持实时计算。 以太坊网络上的区块处理时间长达 15 秒(相比之下,比特币网络上为 10 分钟)。 因此,开发人员需要编写一些异步代码来更新状态(这与 React 非常相似)。 同时,在以太坊网络中,合约执行的每一步都需要消耗gas,gas最终会以ether(eth)进行结算。 因此,开发者可能经常会遇到由于gas设置过低而无法完成计算的情况(比如本棋局)。 换句话说,以太坊的“链上计算”非常昂贵并且消耗带宽。 因此,市场上出现了一些像Truebit这样旨在降低计算成本的“链下计算”服务。 如何开始 简而言之,这是一个了不起的领域。 区块链技术是交叉学科的典型代表,涉及经济学、博弈论、金融学、计算机科学、数学、密码学等诸多学科。 跨学科通常意味着有很多基础工作要做。 对于区块链领域的新人,0x项目组的Brandon给出的建议是,选择自己感兴趣或者与自身经历相关的领域作为切入点,而不是一上来就想当大胖子: “如果你之前做过JS开发工作比较感兴趣,那么这个领域有很多JS库需要你这样的人去完善。

随着时间的推移,在开发过程中,你会逐渐了解和熟悉这方面。 您不必为完成一门课程而感到负担重重。 》就像区块链技术倡导的“去中心化”理念一样,该领域的大部分项目的代码都是开源的。这里有一些资源可以让你快速入门: • Solidity 官方文档 是一个很好的学习起点语言。• Truffle 框架是最好的solidity 开发框架之一。• 在zeppelinOS 代码库中可以看到许多著名的开源库。• Blockgeeks 提供了详细的以太坊代币开发指南以太坊帮手,带有一些代码示例和抽象概念.• 你也可以从流行的Crypto Kitties学习如何在区块链上创建自己的游戏。如果你想做一些项目来实践,也许以下想法是好的: • 创建你自己的钱包应用程序。它可以是网页版, 移动版或桌面版。 • 发行您自己的ERC-20 代币并将其部署在测试网络上。 • 更改加密猫的代码(例如更改为狗、坦克、机器人)并部署在测试网上。 展望未来,我们必须承认,围绕区块链的发展是一团乱麻。 与现有成熟的网络开发相比,区块链领域还没有好用的框架和工具。 但从另一个角度来看,这种早期的迷茫恰恰是一个契机,更重要的是,这是一个极有可能带来发展模式剧变的契机。

在区块链上,你不需要部署任何中心化服务器,这意味着单点故障风险为零。 如果你的整个技术栈都是去中心化的,那么就没有必要引入“可信”的第三方,没有第三方就意味着 100% 的审查阻力。 区块链技术为数据开放带来了新机遇,未来基于区块链的去中心化数据库可期。 有了区块链技术,我们可以预见到一个没有中间商,信息和权利系统分配的未来世界。 如果您想了解更多关于以太坊的信息,请点击#tab=1&category=-1