乐趣区

EOS钱包区块链核心业务开发详解

区块链钱包是什么?很多人会把它理解为微信支付宝钱包等,然而区块链钱包里没有数字货币,数字货币存储在区块链上,钱包作为公私钥的管理工具,用户通过钱包与区块链平台上的 DApp 进行交互。

区块链钱包对于区块链而言好比浏览器对于互联网一样。早期人们对于在浏览器上输入 url 和域名访问互联网都很陌生,但现在浏览器已经成为互联网的重要入口,被几十亿人使用。在区块链上也将会发生同样的一个演变过程,对大多数人来说,现在区块链是陌生的,随着区块链用户从数百万人激增到数千万人,那么许多团队对钱包的这个入口战略资源的争夺将比互联网时代 的浏览器更加激烈。
在区块链领域,钱包毫无疑问有举足轻重的地位,很容易理解区块链钱包的应用价值:
作为支付的入口
随着闪电网络、雷电网络等链外支付以及分片、子链等技术的成熟,未来一旦数字代币支付成为主流的支付方式之一。那么钱包作为入口,就有很大的想象空间。
作为资产管理的入口
目前比特币、以太坊、EOS 等公链越来越多,协议和应用越来越多,token 也越来越多,中心化交易所、去中心化交易所、量化交易等都在发展。现在,一些钱包提供了理财的功能,一些长期价值投资的用户把代币存入钱包进行理财。
作为交易的入口
对于用户来说,在钱包就可实现快速的交易。钱包由于沉淀了很多用户的数字资产,当用户需要进行交易时,钱包与一些去中心化或中心化的交易所结合,用户输入自己的理想价格,可以实现尽快的撮合交易。
作为 DApp 市场入口
随着公链的成熟,尤其是 EOS、以太坊等区块链基础设施的逐步完善,一些游戏类、金融类、社交类、泛娱乐类的 DApp 应用逐步发展起来。随着成千上万,甚至是几十万上百万的 DApp,用户需要有一个地方去发现和下载。对于钱包来说,DApp 市场入口绝对是最具想象力的前景。
为什么要了解 EOS 钱包?
有着区块链 3.0 之称的 EOS 拥有庞大的用户群体,自 2018 年 6 月份主网上线以来,注册帐户已经达到 60 万,而算上没有 EOS 帐户但在交易平台持有 EOS 代币的用户,可能这个数字已经超过百万:

在 EOS 平台上开发的 DApp 如雨后春笋般纷纷出世,主网上现在跑的 DApp 已经超过了 200 个,其活跃量、交易量也早已超越了以太坊。这些开发团队以及个体开发者选择基于 EOS 开发,首先是 EOS 网络对开发者友好,适宜 DApp 应用程序开发;其次开发者对于 EOS 生态的未来有信心。

钱包作为数字货币资产的存储和 Dapp 的超级流量入口,其市场需求较大,创建和管理钱包是进入区块链领域的必修课。因此我们推出本课程,自己来开发一个 EOS 钱包,旨在帮助区块链用户 和应用开发者全面快速地掌握区块链钱包开发的知识技能与业务流程。
课程项目简介
课程项目是一个手机 EOS 钱包,最终的实现效果如下图所示:

用户可以导入自己的账号,也可以创建新的测试网账号,可以在钱包的多个账号间切换活动账号。一旦选中的当前活动账号,用户就可以查看自己的资产总览信息,也可以向其他账号转账,或者浏览自己的转账历史记录。
钱包也提供了 DApp 开发者关心的资源管理功能。使用钱包可以购买或者出售内存资源,也可以抵押 EOS 获取 CPU 或者 NET 资源。
作为区块链的入口,我们的钱包不仅提供了管理自己 EOS 账号的能力,还可以提供更多的增值服务,例如 DApp 推荐、市场行情、新闻动态等。
课程项目技术栈概述
本课程项目采用 NodeJS 的全栈式开发模式,基于 npm+webpack 的工作流,为了顺利地完成本课程的学习,你应该对以下语言 / 技术有一些了解:

本课程采用 Webpack 把项目当做一个整体,从一个给定的主文件(如:index.js)开始找到项目的所有依赖文件(JavaScript,CSS 和 Fonts 以及 Image 等等),通过合适的 loaders 处理它们,最后打包为一个浏览器可识别的 JavaScript 文件。

本课程使用 Facebook 的 Web App 解决方案 React 技术栈(react+redux+react-router)以及基于 React 实现的 UI 框架 Antd-Mobile,帮助学员快速完成前端 H5 页面的开发并提供给用户优质的用户体验。
Eosjs 是访问 EOS 区块链的 JavaScript 库,提供了大量简单易用的 EOS 的 HTTP API 封装方法,其作用就像 web3.js 对于 Ethereum 或者 neon-js 对于 Neo 一样。
课程内容概述
本课程面向广大对 EOS 开发感兴趣的朋友,是目前市面上理论与实战相结合最全的 EOS 开发项目,内容涵盖 EOS 开发相关的基本概念,并围绕 EOS 钱包项目开发逐步进行讲解,最终实现一个 EOS 钱包。
第一章:概述
介绍什么是区块链钱包;分析区块链钱包的应用价值,阐述本课程的目的;并介绍课程项目使用的技术栈,引入对学习者基础知识技能的要求。
第二章:理解 EOS 账户与钱包
引入 EOS 账户、密钥、钱包等概念。介绍如何获取第一个 EOS 账号,以及如何查询账号信息。解释为什么主网中创建账户的是需要费用的。阐述助记词、keystore、密码与私钥的关系。并通过账户权限与钱包相关的操作,学习 EOS 账户权限和官方钱包命令等知识。
第三章:需求分析与总体设计
项目需求分析与总体设计,阐述项目功能模块划分、系统整体架构、前端服务层设计、前端状态机、第三方服务清单等。
第四章:前端服务组件实现
实现前端服务组件,封装手机钱包的核心功能,例如账号创建、账号导入、转账交易、交易历史查询、资产管理、资源管理等。
第五章:前端 UI 组件实现
学习如何利用 React 实现钱包的前端 UI 组件,如何利用 React-Router 前端路由切换组件,如何使用 Redux 状态库实现前端状态管理。
感兴趣的同学可以试试,深入浅出玩转 EOS 钱包开发,本课程以手机 EOS 钱包的完整开发过程为主线,深入学习 EOS 区块链应用开发,课程内容即涵盖账户、计算资源、智能合约、动作与交易等 EOS 区块链的核心概念,同时也讲解如何使用 eosjs 和 eosjs-ecc 开发包访问 EOS 区块链,以及如何在 React 前端应用中集成对 EOS 区块链的支持。课程内容深入浅出,非常适合前端工程师深入学习 EOS 区块链应用开发。

退出移动版