问题导读
1.本文学习认为分为哪5个阶段?
2.编程基础你认为选择什么语言比较好?
3.区块链进阶中,本文列举了哪些知识?
4.区块链开发有哪些典型平台?
5.智能合约与区块链是什么关系?
推荐另外一篇:
新手该如何学习区块链的
http://www.aboutyun.com/forum.php?mod=viewthread&tid=24207
前言:区块链刚开始学习,大家很容易找不到方向,现在网上资料很多,到底学的是哪一方面的知识,想整体了解区块链,但是又没有这方面的资料。这里参考百度脑图,整理成文字。
共分为5个阶段
1.编程基础
2.区块链基础
3.区块链进阶
4.区块链高级
5.区块链实战
这5个阶段,我们仔细往下面看,包含了很多的内容。第一阶段编程基础,就够让我们气馁的了。编程语言有C++,js,golang,为什么会有这么多。其实在我们编程的时候,我们只需要学习一门语言就可以。比如还有Java,Python等也是可以的。所以我们对于下面提供的内容,如果你不采用这个语言,是可以忽略的。那么这里面哪个语言比较适合我们开发?具体根据自己的情况,很多人说golang不错,因为他的并发能力还可以。
在区块链基础里面,我们看到区块链有三个阶段,
1.区块链1.0:数字货币
2.区块链2.0:以太坊
3.区块链3.0:智能社会
第一阶段以比特币为准,第二阶段,则是以太坊,以太坊有了智能合约,这是非常厉害的,让区块链可以有很多应用场景。
对于区块链进阶,这里面确实有我们需要了解的内容。如果你看过视频,或则一些文档,肯定会经常听到“共识机制,密码学,智能合约”等,这些是需要我们了解的干货。如果有时间,后面会补充上相关资料文档或则视频,转载注明链接,让大家获取最新的资料。
其中这里面需要说明的是对于比特币,以太坊,HyperLedger 是三个不同的区块链平台。也就是说,你不用全部都学,对他们可以了解,然后选择一个自己感兴趣的。这个三个没有什么好坏,看你的兴趣。不过比特币和以太坊似乎更多一些。
对于高级和实战,如果我们了解透了。后面工作,相信我们自己也知道自己改如何学习了。后面有问题大家共同讨论。
1.编程基础
1.Linux环境
1.Ubuntu操作系统安装
2.Linux命令、vim
2.C++
1.面向对象编程
1.抽象、封装、继承、多态
2.泛型编程
3.STL库(各种容器)
4.boost库
5.OpenSSL库
2.算法
1.常用算法排序
(1)冒泡排序
(2)快速排序
(3)简单选择排序
(4)堆排序
(5)直接插入排序
(6)希尔排序
(7)合并排序
2.基础算法思想
(1)猜价格游戏
(2)递推算法
(3)枚举算法
(4)分治算法思想
(5)贪婪算法
(6)试探算法
(7)模拟算法
3.数据结构
(1)简单数据结构
(2)复杂数据结构
二叉树的存储
- 操作二叉树
- 遍历二叉树
- 测试二叉树
- 线索二叉树
- 最优二叉树(哈夫曼树)
3.GoLang
1.并发编程
1.协程
2.goroutine
3.并发通信
4.channel
5.多核并行化
6.时间片处理
2.网络编程
1.socket编程
2.HTTP
3.RPC编程
3.分布式系统架构
4.JS
1.ESS
- prototype对象
- object对象和继承
- 面向对象编程的模式
- 单线程模型
- 定期器
- Promise
2.ES6
5.mysql数据库
1.SQL语言
(1)创建和管理表
(2)索引和约束
(3)视图
(4)触发器和游标
- DML触发器
- INSTEAD OF 替代触发器
- 系统事件触发器
(5)异常处理机制
(6)事务和锁
事务
锁
2.区块链基础
1.区块链基本原理
1.区块链技术结构
2.区块链分类
2.区块链发展脉络
1.区块链1.0:数字货币
2.区块链2.0:以太坊
3.区块链3.0:智能社会
3.区块链特点
1.去中心化
2.可溯源
3.不可篡改
4.公开透明
4.区块链应用场景
1.支付结算
2.数字票据
3.资产数字化
4.征信
5.股票登记
6.证券交易
7.供应链金融
8.P2p领域
9.电子存证
10.数字版权
11.慈善
12.招标投标
5.钱包
1.比特币钱包
1.Bitcoin
2.bitpay
2.以太币钱包
1.Mist
2.MyEtherWallet
3.MetaMask
4.Parity
6.GPU多显卡挖矿
1.硬件设备
2.软件工具
3.参数调整
7.ICO/IPO
8.硬分叉
1.比特币分叉
2.以太坊分叉
1.Byzantium
2.Constantipole
|
|