EOS 编程到底是什么呢,学什么呢?
抱歉,我现在也不无法回答.不过,我可以告诉你我做了哪些尝试,目前的理解,以及下一步还要做什么.
首先,EOS 开发最重要的文档自然是在 GitHub: github.com/EOSIO/eos ,比如:
介绍了如何在本机编译,运行 EOS
其中的 contracts 目录,提供了一些智能合约的范例.
其中 一些基础概念:
eosd - server-side blockchain node component
可理解为运行在本机的 EOS Daemon / 服务器
eosc - command line interface to interact with the blockchain
可理解为方便与 EOS 服务器进行交互的命令行工具,不用写代码就可以通过这个工具执行命令,进行一些测试
eos-walletd - EOS wallet
可以理解为 EOS 钱包的命令行工具
然后,主要开发文档在此: eosio.github.io/eos/ ,主要分为 2 种形式的接口及文档:
REST RPC 接口
也即,不是直接使用 C/C++/webAssembly 编写代码,而且封装为 REST RPC 接口.有了这个接口,对编程语言就没有限制了,你可以用任何你喜欢的语言,比如 Swift/Python/etc
不过,可惜的是,目前已经封装的接口并不多,你并不能通过 REST RPC 干所有事情.希望 EOS 能尽快完善 REST RPC 接口,这是目前我最期待的
我把其中的接口都测试了一遍,可惜就是太少了
C/C++/WebAssembly 源码
EOS 本身就是基于 C/C++/WebAssembly 编写的,基于这些语言的文档自然最全.
自然的,目前如果你想充分基于 EOS 开发,只能使用 C/C++/WebAssembly;如果不会,要么学习,要么等 REST RPC 接口早日完善
你可能知道,EOS 在 17 年 12 月 4 日发布了 pre-release 2.0,同时也发布了 公测版的 EOS 区块链网络(不是主链,主链预计 18 年 6 月发布),以下是这部分的介绍:
Testnet: Public
这个就是关于此次公测链的根文档
你需要先在 这里 申请测试账户
测试链的 REST API 接口文档
包含了认证,区块,交易 (Transaction),账户等部分的介绍
我简单试了一遍,貌似 v1/blocks 接口有问题,其它正常
** 下一步怎么学呢?** 其实我也还不清楚,有这么几个可选项:
学习 Docker
为什么呢?因为我暂时不想在 macOS 主系统中编译 EOS 项目,目前是在虚拟机中编译的,但多少有些方便
EOS 支持在 Docker 中运行,这样既不会把我的主系统搞乱,也不必忍受虚拟机的性能和麻烦
学习 C/C++/WebAssembly
只有这样,才能在 EOS 目前的状态下,深入的测试,学习
这其实是成本,风险非常高的选择,我非常犹豫;我会再去了解下 EOS 团队有没有关于 REST 接口开发计划
学习区块链通用开发技术
EOS 只是区块链的一种形态,而区块链本身还有很多通用型的开发技术,这个也要先行了解
你也对 EOS 感兴趣吗?希望这篇文章能帮你揭开 EOS 开发的神秘面纱,也欢迎一直啃这块骨头.
来源: https://juejin.im/post/5a6600c46fb9a01cbc6e855d