(1)项目名称:
Conflux CPP SDK
(2)项目类型:
研究探索类
(3)项目介绍:
目前Conflux官方已经推出了rust、js、golang、java、python的SDK和第三方开发的.NET Core SDK,基本能够满足Web端、桌面端、Android端大部分应用程序开发的需求,但是由于目前在一些追求程序运行性能的领域(如大型PC端游戏方面如虚幻4引擎、Cocos2d-x等)依然需要采用C++语言进行开发,所有需要开发一套原生的C++ SDK接口与系统进行交互。
在项目编写的前期,我主要参考了C++实现Ethereum的源码(目前主要是golang实现)以及github上最流行的eth C++ SDK - aleth项目,但是由于C++语言本身的限制(静态语言、不支持反射),在golang与js等语言中容易实现的功能,在C++中则变得十分的繁琐(比如ABI编解码的问题)。
本项目的SDK接口主要参考conflux官方的golang实现,尽量做到与golang接口名称的统一,降低开发人员的学习难度,同时兼顾js与java实现,进行接口的补充与完善。
(4)实现成果:
1.外部账户管理相关功能,包括新账户创建、KeyStore导入、PrivateKey导入、密码更新、账户删除功能。
2.RPC底层通信功能,包括支持https、hhtp、原始socket协议的RPC通信。
3.支持原始20字节hex地址与最新的base32编码地址。
4.ABI的编解码功能。
5.智能合约相关功能,部署、Call、Send交互。
6.编写相关功能的示例代码,方便开发人员参考。
7.编写SDK开发文档。
(5)远期目标:
1.使用C++ SDK开发开发一款2D休闲类游戏,主要为验证SDK稳定性并完善其功能。
(6)项目进度计划:
2021年5月-7月完成如下工作任务
1、github开源SDK
2、github开源开发文档
3、github开源示例代码
4、Forum论坛版块技术交流
(7)申请人:
csyangbinbin
(8)申请时间:
2021/5/27
(9)团队背景:
团队人员均拥有十年左右的C++上位机与嵌入式的开发经验,拥有丰富的windows与linux平台应用开发经验,目前主要从事信号数据处理相关领域工作。
(10)团队构成与分工:
csyangbinbin,SDK主要开发者,负责SDK整体设计与核心代码的编写。
ALLYCSCUI、BaoGuo,主要负责测试用例编写与文档编写相关任务。
(11)经费明细:
15k USDT , 主要用于团队内部激励。
(12)是否开源:
完全开源
(13)资料链接:
(14)产品链接:
(15)项目灵感来源:
(16)其他需要说明的情况:
(17)收款钱包地址:
cfx:aakd0d2x8zuu7zr3vfm3rwnjyv5rxxuvyjz1xwmk1y
(18)项目的精益画布: