最近在研究EOS,整理了一下相关的资料来源和我认为合适的阅读顺序,分享出来,以便想要了解EOS的朋友们参考。资料主要以英文为主,中文翻译在网上翻一下就能找到,但或多或少都有些翻译不到位的地方,因此建议有能力的话以阅读英文文档为主。
资料来源
其中主要的信息来源是官网或半官方性质的社区:
官方网站(https://eos.io/)
官方Github及其文档(https://github.com/EOSIO/eos/),包含README以及里面提到的多个链接
当然还有BM的twitter和EOS的telegram,不过这种资料更多是预告或讨论性质,最终是要归为文档或代码的。
阅读顺序
1. 白皮书
学习EOS,最先要读的当然是EOS的白皮书,但要全部读懂技术白皮书也是有点难度的,因此可以先简单过一下,对一些基本原则和名词在脑袋里形成概念。
英文版技术白皮书v2(https://github.com/EOSIO/Documentation/blob/master/TechnicalWhitePaper.md)(中文白皮书在同一个repo下)
存储白皮书(https://medium.com/eosio/start-an-eos-meetup-in-your-community-761be355fce)
2. 启动流程
EOS的全称是Entrepreneurial Operating System,既然是操作系统,其启动程序当然叫做BIOS啦。EOS的启动流程主要是为了选举出超级节点,并开始出块。了解其流程可阅读官方medium上的文章以及github中的代码(最新)。注意:该流程并非最后流程,最终细则还没有出来。
3. EOS宪法
EOS宪法阐述了EOS系统中的很多基本理念,对于开发者来说,尤其需要关注的是有关仲裁(条款3)和开发者和智能合约(条款11)的条款。与以太坊中不同的是,在EOS中,并不完全认同Code is law,而是认为需要仲裁来解决问题。EOS上的任何智能合约都需要提供一份许可证和一份或多份李嘉图合约,因此你也额外需要了解什么是仲裁法庭,许可证,李嘉图合约。
4. 节点设置,钱包管理
对于刚开始接触的程序员来说,需要先设置自己的EOS节点并了解相关指令。EOS的wiki里给出了最详细的步骤。
不过有一个更方便的选择是采用eosjs里的docker运行脚本,不仅一键运行节点,还加载了一部分智能合约,并进行了代币的初始分配。
5. 智能合约开发
目前eos的智能合约开发以C++为主,有一些社区项目在将solidity之类的智能合约语言搬过来,但最方便的还会是c++。
6. 几个建议
- EOS Go上的讨论会参考注册时间和拥有积分的天数(类似于币天的概念),因此最好早点注册一个账号。
- 国内可以关注IMEOS社区。