让我们明白一点:我相信EOS是开发者的天堂。我想帮助其他开发人员和工匠了解EOS以及为什么它是开发和部署去中心化应用程序的良好环境。
演讲大师兼企业家,低语者保罗格雷厄姆曾经说过:“伟大的黑客倾向于聚集在一起”和“像所有工匠一样,黑客喜欢好工具。事实上,这是轻描淡写的。优秀的黑客发现使用糟糕的工具是无法忍受的“,我对这两个陈述完全赞同。
EOS是一个分布式,信任最小化的计算机,如Ethereum,但它为开发人员提供了出色的性能和定制经验。如果开发人员流程朝着具有更好“开发者用户体验”的工具的方向发展,那么我预测EOS将继续积累来自其他平台的智能合约开发人员。
我写这篇指南的动机A.K.A。 一切都打破了,没有人可以帮助我:
在构建我们的以太网入口智能合约时,我忽略了同时编写上岗指南。在调试运行时问题时,这使我的生活变得一团糟,因为我是唯一一个能够快速修复的人。没有快速的方法来教育另一个关于以太坊智能合约如何运作以及如何使用所有相关工具的开发者。看看Solidity合约很容易,但祝你好运环境{Truffle,MetaMask,IPFS,Ganache,…}。
问题:我们不总是会说同一种语言!
开发智能合约大致类似于构建“集中式”软件应用程序,但有一些新的强大功能需要理解。首先,什么是区块链,为什么我不能随时将更新推送到我的代码?为什么我需要一个帐户来与合约互动?什么是MetaMask?
就个人而言,我发现以下主题对于传统开发人员来说是新的:
- 智能合约:不可变并存储在分布式账本中的软件。合约执行他们的代码告诉他们要做的事情。
- 契约不变性:在部署代码后更改代码并不容易(或免费!)
- 分布式分类帐:没有人拥有且任何人都可以访问的数据库。可能是基于区块链或DAG(DAG是一个完全不同的兔子洞,你应该摔倒?)
- 分布式信任最小化计算平台:像计算机,但建立在分布式账本上。
- 可升级性:在部署之前需要考虑升级已部署合约的策略,否则你将烧毁$$。
- 帐户,地址,公钥,私钥:你需要帐户才能与智能合约进行互动。
- 交易:要“召集”智能合约功能,你需要编写并签署交易,以证明你是发件人,就像蜗牛邮件一样!