主页 > imtoken多签钱包 > 区块链技术教程,如何从零开始学习以太坊和区块链
区块链技术教程,如何从零开始学习以太坊和区块链
许多人对区块链和以太坊感到困惑,不知道如何学习。本文简要介绍了一些学习的方法和资源。
一、 以太坊与区块链的关系
从区块链的历史看,比特币最先诞生
,当时还不存在区块链的技术和术语,然后这个行业就从
比特币
从中提炼出技术架构和系统,称为区块链技术。从比特币中提炼出来的区块链技术被称为区块链1.0时代,当时的应用主要是电子货币和去中心化交易,比如各种山寨币。而以太坊将区块链带入2.0时代,区块链2.0并没有推翻1.0,而是建立在1.0之上,实现了区块感知、价值感知,图灵完备,并优化细节,从而形成以智能合约为特色的区块链2.0。比特币被定位为应用程序,而以太坊被定位为可以使用智能合约做各种应用程序的平台。
所以,学区块链,直接学以太坊
以太坊知识库:
二、 如何开始使用以太坊
对于没有接触过区块链的小伙伴,建议先参与以太坊的日常应用。
1、 使用客户端
这里教程很多,推荐一个以太坊钱包教程
2、 挖矿
挖矿教程很多,一般分布在各个矿池中。这里推荐一个国产矿池教程,大家可以加入各个矿池的群进行交流。有国内矿池,
等几个大矿池。
3、 浏览公链的区块信息
经历了以上事情后,就可以通过区块链浏览器查看自己的账户和交易,更加直观。
通过以上操作,基本可以对区块链有一个初步的认识和认知。
三、 以太坊项目说明
以太坊发布后,有多个客户端,也支持多个平台。初学者经常被各种客户弄糊涂。这篇文章做一个详细的总结。
以太坊客户端按语言分类,在github上分为不同的项目。源码地址:虽然以太坊客户端很多,但有两个共同的特点:
1、相同语言的客户端在不同平台上使用完全相同
2、不同语言(mist、geth、eth等)的客户端在同一个平台(linux、windows或OSX)上共享相同的应用配置,命令行可以使用的参数有也一样。
下面根据github上的项目来介绍各个客户端的用途和特点:
(一)去以太坊项目
开发语言:go语言
客户档案:Geth
界面:命令行
适用平台:windows、linux、OSX
功能特点:本项目是目前使用最广泛的以太坊客户端。大多数节点都在运行这个客户端。它也有最多的教程和例子。建议使用。它可用于挖矿、构建私有链、管理账户和部署智能。合约等常用功能无法编译成智能合约。
(二)webthree-umbrella 项目
该项目包含 3 个客户
开发语言:c++
客户端文件:AlethZero、Mix 和 Eth
使用平台:windows、linux和OSX
界面:图形界面
功能与特点:该项目严格来说是cpp-ethereum项目的一个外壳,是以太坊基金会前CTO Gavin
木头主持筹备,所以人气也很高以太坊入门教程,易用性也很好。AlethZero 是一个图形钱包客户端以太坊入门教程,对应 Geth 的功能,但是是全图形化的。然而,随着以太坊基金会推动的图形钱包 Mist 的后续推出,它逐渐没落。混合
是一款智能合约(以太坊称为DAPP)的开发IDE,可以支持智能合约(DAPP)的编写、调试、部署和全图形界面,但是目前已经停止开发,开发团队已经转向混音。Eth 是一个用 C++ 编写的命令行客户端,具有与 Geth 相同的功能。
(三)迷雾计划
开发语言:JavaScript
客户端文件:Mist(目前使用名称 Ethereum-Wallet)
使用平台:windows、linux和OSX
界面:图形界面
功能与特点:本项目是以太坊基金会推动的主要项目。Mist 不仅定位于钱包,而且定位于未来的 DAPP(智能合约应用程序)市场,类似于苹果市场,你可以拥有自己的账户和浏览,用于发布和买卖以太坊的 DAPP 应用程序。目前因为开发的不够全面,所以暂时显示为 Ethereum-Wallet,功能也很简单,就是一个钱包的功能。强烈推荐,未来主流客户。
(四)solidity 项目
开发语言:C++
客户端文件:solc
使用平台:windows、linux和OSX
界面:命令行界面
功能及特点:本项目是以太坊智能合约(DAPP)的编程语言,使用solc作为编译器,本项目主要用于编译,严格来说是一个基础编译平台,可以使用MIX作为替代用于一般发展。
(五)浏览器-solidity 项目
开发语言:C++
客户端文件:在浏览器中显示
使用平台:windows、linux和OSX
界面:浏览器界面
功能特点:本项目为智能合约浏览器版开发环境,可支持在浏览器中直接开发、调试、编译。对于初学者来说,无需安装即可快速上手,非常方便,直接访问地址即可使用。:
(六)pyethereum 项目和 ethereumj 项目
pyethereum项目是用python语言编写的以太坊客户端,ethereumj项目是用JAVA语言编写的以太坊客户端,只是语言不同,GO语言编写的客户端Geth功能完全一样。
(七)以太矿工项目
开发语言:C++
客户端文件:ethminer
使用平台:windows、linux和OSX
界面:命令行
功能及特点:本项目是cpp-ethereum项目的一部分,使用Geth进行GPU挖矿,比CPU挖矿效率提高100倍以上,也可以用于矿池
四、 以太坊常用 URL(包括智能合约)
以太坊有很多有用的网站,分布在国外,很难找到。这是一个总结。
1、以太坊官网:
本站为以太坊官方网站。里面有以太坊的详细介绍和各种连接地址。建议详细看一下。
2、以太坊所有源地址(官方):
这个github是以太坊所有项目的源地址,以及更新和发布。
3、Ethereum Homestead 文档地址(官方):
本网站是以太坊的详细介绍文档,基本涵盖了以太坊的方方面面。如果有不清楚的原理和应用,基本上可以在这里找到答案和线索。
4、以太坊网络状态地址(官方):
网站可以全面展示网络状态,包括节点、难度、算力等,非常直观
5、以太坊资源网站(官方):
网站提供以太坊的诸多应用资源,如行情、合约辅助工具、已发布的智能合约、以太坊网络、DAAP等,方便开发和发布。
6、Solidity 编程文档(官方):
本网站提供了以太坊 Solidity 语言的综合参考手册,是学习 Solidity 语言的必备工具。
7、以太坊网络扫描(官方):
网站提供了以太坊网络的各种状态,比如账户详情、TOKEN详情、难度详情、区块详情,非常方便直观。
8、以太坊官方博客:
9、以太坊维基百科地址:
这里有白皮书、黄皮书和开发指南,比较全面。
10、以太坊中文粉丝网站:
本网站是国内以太坊爱好者自发建立的网站。内容比较齐全,信息更新很快。
11、以太坊gitter的直播交流网站:
这个网站是以太坊的gitter图表的网站。根据项目划分为多个房间。只要你问问题,他们大部分都会回答,这很好,但你只能用英语交流。
12、以太坊官方论坛:
官方论坛,没什么好说的,遇到的几个问题,在这里找到的全部答案
13、以太坊第三方强大IDE:
这是第三方发布的 Solidity IDE。我看了看。它非常强大,而且太强大了,无法使用。他的目标是企业级的IDE,老外用的比较多。
14、以太坊开发框架Truffle手册:
Truffle的手册,以太坊目前流行的开发框架,这个框架比较流行。
15、以太坊开发框架dapple手册:
这个开发框架可以在 gitter 图表上看到。感觉用的人不多。我们先观察一下。
16、以太坊官方推荐开发框架Meteor手册:
该开发框架为以太坊官方推荐,已写入以太坊官方wiki。值得学习。当然,以太坊官方经常换方向,以后也不一定能换。