1、前言及环境部署
1.1 课程说明
为什么有这个课程?
入门区块链开发已有些时日,走过的坑实在是太多了,对于像我这种从事互联网软件开发多事的老兵来说,上手都有些吃力,可想而知对于新手来说就更难了,尤其是完全靠自学又没有人指导的情况,可能一个坑就能让你怀疑人生。
其实区块链开发入门并不难,尤其是对于已经有互联网编程经验的人来说,只要搞明白接口和合约语言,一切都明了。难的是在于以下几个原因:
一是虽然区块链目前已经很火了,但从开发的角度看,整个行业的技术都还是不是很成熟,尤其是对于国内的开发者,学习的资料相对来说比较少,有用的更少,别看网上搜索出来一大堆资料,但大部分都是转载,你抄我的我抄你的,特别浪费咱们的时间。这个课程相当于在浩瀚的资料海中提取的精华,让你真正学有所成,学有所用
二是由于技术层面的不成熟,导致技术更新比较快,也导致之前很多教程过时不能用,最典型的是web3.js 国内99%的教程都是基于0.20版本的,因为很多教程都是去年甚至更早之前出的,但今年官网默认安装的是1.x版本,这两个版本从调用方式和使用方式都完全不一样了,这导致很多开发者按网上的教程自学的话基本是走不通的,直接坑死初学者,像我这个的老兵也卡了好些天才反应过来。因此这个课程能让你少走很多弯路
三是由于初学,不知道哪些该学哪些是可以不学的,加上网上有些区块链开发教程它能从盘古开天辟地给你讲起,其实没必须。对于大部分开发者来说,想学的都是区块链应用开发,这并不需要一开始就对区块链底层技术过多学习。这就好比如你要学习手机应用开发,你并不需要把手机系统原理都学习了才能开发吧。所以很多人一看到什么密码学了什么共识机制了就蒙了,自己给自己找坑,其实没必要,本课程将会通过一个快速入门让你知道你仅需要学习哪些知识就好。
课程目的
本课程面向的是区块链开发的初学者,如果你有一点互联网开发能力(html,css,js,php),那更简单。如果没有也没关系,本课程中的代码会加详细的解释,视频中也会在写代码过程说明它的作用。
本课程从开发环境配置,快速入门,到完整的抽奖游戏案例实现,让大家从零开始,一步一步深入到区块链开发的方方面面。既要让大家轻松入门,也能让大家收获满满。
之所以选择抽奖作为案例,是因为目前网上的教程大多是抄solidity手册里提供的投票案例。一方面没什么新意,也不好玩,可能提不起大家的兴趣;二是我们的教程一般都是以真实的项目作为案例,提升大家的实战能力,而且抽奖游戏应用比较广泛,而且客户众多,很适合实战。
1.2 nodejs安装
安装比较简单,直接按下面教程安装即可
参考教程:https://nodejs.org/en/download/
由于国外可能网速比较差,可以使用国内的镜像资源,在cmd命令行中执行
npm configsetregistryhttps://registry.npm.taobao.org
验证命令是否设置成功
npm config getregistry
如果有返回“registry.npm.taobao.org”字符说明镜像配置成功。
1.3 安装Truffle
在cmd命令行中执行
npminstall-g truffle
测试是否安装成功
truffle -v
1.4 安装Ganache
下载地址:https://www.trufflesuite.com/ganache
下载回来的格式是.appx,在window上不能直接安装,网上有一些安装方法但比较麻烦,最简单的安装方法是把.appx改成 .zip,然后解压, 然后在app目录下找Ganache.exe文件,直接点击启动即可。
1.5 xampp 安装
下载地址: https://www.apachefriends.org/index.html
下载回来后直接安装即可,安装目前最好不在放在系统盘C盘
1.6 Composer 安装
Composer 类似nodejs中是npm,可以下载安装PHP插件
下载地址: https://getcomposer.org/download/
安装比较简单,直接执行exe就可以
测试是否安装成功
composer -v
同npm一样,由于国外可能网速比较差导致composer经常报错,需要使用国内的镜像资源,在cmd命令行中执行
composer config -g repo.packagistcomposer https://packagist.phpcomposer.comcomposer update
1.7 web3.php 安装
进入xampp安装目录下的htdocs目录下,创建一个helloworld目录,作为后面我们快速入门的项目目录,然后再在helloworld目录创建两个目录:eth和web,目录结构如下:
├─htdocs xampp网站目录│├─helloworld helloworld项目││├─eth智能合约目录││├─web web前端网页目录
在cmd命令下中进入web目录,安装web3.php
composer require sc0vu/web3.php dev-master
======================================================================
大家可以到下面教程的网址来观看课程 “区块链DAPP开发入门课程(PHP版)” 主要是介绍使用php进行智能合约开发交互,进行账号创建、交易、转账开发以及过滤器和事件等内容。