第一节 课程概述
本课程面向初学者,内容涵盖以太坊开发相关的基本概念,并将手把手地教大家如何构建一个 基于以太坊的完整去中心化应用 —— 区块链投票系统。
通过本课程的学习,你将掌握:
以太坊区块链的基本知识
开发和部署以太坊合约所需的软件环境
使用高级语言(
solidity
)编写以太坊合约使用NodeJS编译、部署合约并与之交互
使用
Truffle
框架开发分布式应用使用控制台或网页与合约进行交互
前序知识要求
为了顺利完成本课程,最好对以下技术已经有一些基本了解:
一种面向对象的开发语言,例如:Python,Ruby,Java...
前端开发语言:HTML/CSS/JavaScript
Linxu命令行的使用
数据库的基本概念
课程的所有代码均已在Ubuntu(Trusty、Xenial)和 macOS 上测试过。
课程地址:http://xc.hubwiz.com/course/5a952991adb3847553d205d1
第二节 课程简介
在本课程中,我们将会构建一个去中心化的(Decentralized
)投票应用。利用这个投票应用, 用户可以在不可信(trustless
)的分布环境中对特定候选人投票,每次投票都会被记录在区块 链上:
所谓去中心化应用(DApp
:Dcentralized Application),就是一个不存在中心服务器 的应用。在网络中成百上千的电脑上,都可以运行该应用的副本,这使得它几乎不可能 出现宕机的情况。
基于区块链的投票是完全去中心化的,因此无须任何中心化机构的存在。
第三节 开发迭代
本课程将涵盖应用开发的整个过程,我们将通过三次迭代来渐进地引入区块链应用 开发所涉及的相关概念、语言和工具: