一、    以太坊和区块链的关系

从区块链历史上来说,先诞生了比特币,当时并没有区块链这个技术和名词,然后业界从比特币中提取了技术架构和体系,称之为区块链技术。从比特币提取的区块链技术称之为区块链1.0时代,那个时候的应用主要以电子货币和去中心化交易为主,比如各种山寨币。而以太坊将区块链带入了2.0的时代,区块链2.0不是推翻了1.0,而是在1.0的基础上实现了区块知晓、价值知晓、图灵完备,并进行了细节优化,从而形成了以智能合约为特色的区块链2.0。比特币定位于一个应用,而以太坊定位于平台,你可以在这个平台上利用智能合约做各种应用。

所以,学习区块链,直接学习以太坊就好了

二、    以太坊入门的方法

对于没有接触过区块链的人,建议先参会以太坊的日常应用。

1、         使用客户端

这里的教程很多,推荐一个以太坊钱包教程

2、         挖矿

挖矿的教程很多,一般分布在各个矿池,这里推荐一个国内矿池的教程,并且可以加入各个矿池的群去交流一下。国内的矿池有www.f2pool.com,www.bw.com 等几大矿池。

http://pan.baidu.com/s/1c27DOCo

3、         浏览公有链的区块信息

在经历以上事情后,可以通过区块链浏览器去查看自己的账户和交易,更直观感受。

通过以上的操作,基本可以算对区块链有了一个初步的了解和感知。

三、    以太坊各个项目说明

以太坊发布以后,有 多个客户端,同时也支持多个平台,初学者往往被各种各样的客户端弄迷糊,本文进行了详细的总结。

以太坊客户端以语言进行分类,在github上分成了不同项目,源代码地址:https://github.com/ethereum/,虽然以太坊客户端众多,但是有两个共同特点:

1、同一语言的客户端在不同平台上的使用是完全相同的

2、不同语言的客户端(mist、geth、eth等等)之间在同一个平台(linux、windows或OSX)上共用一样的应用配置,同时其命令行可使用的参数也是一致。

下面就以github上的项目为分类说明各个客户端的用途和特点:

(一)go-ethereum项目

开发语言:go语言

客户端文件:Geth

界面:命令行

适用平台:windows、linux和OSX

功能和特点:该项目是使用最广泛的以太坊客户端,大部分节点都是运行的该客户端,教程和例子也最多,推荐使用,可用于挖矿,组建私有链,管理账号,部署智能合约等常用功能,不可以编译智能合约。

(二)webthree-umbrella项目

此项目包含3个客户端

开发语言:c++

客户端文件:AlethZero、Mix和Eth

使用平台:windows、linux和OSX

界面:图形化界面

功能和特点:该项目严格来说是cpp-ethereum 项目的一个shell,是以太坊基金会的前CTO,Gavin Wood主持编写的,所以人气也很高,易用性也很好。AlethZero是图形化的钱包客户端,对应的是Geth的功能,不过是全图形化的。但是随着后续以太坊基金会主推的图形化钱包Mist的推出,渐渐没落。Mix 是智能合约(以太坊称为DAPP)的开发IDE,可以支持智能合约(DAPP)的编写、调试,部署,全图形化界面,但是目前已经停止开发了,开发组转向了Remix。Eth是C++编写的命令行客户端功能和Geth一样。

(三)Mist项目

开发语言:JavaScript

客户端文件:Mist(目前使用Ethereum-Wallet的名称)

使用平台:windows、linux和OSX

界面:图形化界面

功能和特点:该项目是以太坊基金会主推的项目,Mist定位不只是一个钱包,而是将来DAPP(智能合约的应用APP)市场,类似于苹果市场,在这里可以有你的账号,可以浏览、发布和买卖以太坊的DAPP应用。目前因为开发还不够全面,名称暂时显示为Ethereum-Wallet,作用也很简单,就是一个钱包的功能。强烈推荐,未来的主流客户端。

(四)solidity项目

开发语言:C++

客户端文件:solc

使用平台:windows、linux和OSX

界面:命令行界面

功能和特点:该项目是以太坊智能合约(DAPP)的编程语言,使用solc作为编译程序,该项目主要用于编译,严格来说是一个基本的编译平台,一般开发可用MIX替代。

(五)browser-solidity项目

开发语言:C++

客户端文件:浏览器中显示

使用平台:windows、linux和OSX

界面:浏览器界面

功能和特点:该项目是智能合约浏览器版本的开发环境,可以支持在浏览器中直接开发、调试和编译,对于初学者来说,可以快速上手,不需要安装,非常方便,直接访问地址使用:https://ethereum.github.io/browser-solidity/

(六)pyethereum项目和ethereumj项目

pyethereum项目是用python语言编写的以太坊客户端,ethereumj项目是用JAVA语言编写的以太坊客户端,只是语言不同,和前面GO语言编写的客户端Geth的功能完全相同。

(七)etheminer项目

开发语言:C++

客户端文件:ethminer

使用平台:windows、linux和OSX

界面:命令行

功能和特点:该项目是cpp-ethereum项目的一部分,用于和Geth配合进行GPU挖矿,比CPU挖矿效率高100多倍,也可以用于矿池挖矿

四、    以太坊常用网址(含智能合约)

以太坊有很多有用的网站都分布在国外,找起来很费劲,这里总结一下

1、以太坊官方网站:https://ethereum.org/

该网站为以太坊的官方网站,有详细的以太坊介绍和各种连接地址,推荐详细看一看

2、以太坊所有源码地址(官方):https://github.com/ethereum/

该github为以太坊所有项目的源码地址,以及更新和发布。

3、以太坊Homestead文档地址(官方):http://www.ethdocs.org/en/latest/index.html

该网站为以太坊的详细介绍文档,基本包括了以太坊的方方面面,如果有什么不清楚的原理和应用,基本都可以在这里找到答案和线索。

4、以太坊网络状态地址(官方):https://ethstats.net/

该网站能全面的显示网络状态,包括节点、难度、算力等等,非常直观

5、以太坊资源网站(官方):http://ether.fund/

该网站提供了以太坊很多应用资源,比如市场情况、合约辅助工具、已发布的智能合约、以太坊网络、DAAP等,方便开发和发布。

6、Solidity编程文档(官方):http://solidity.readthedocs.io/en/latest/

该网站提供了以太坊Solidity语言的全面参考手册,学习Solidity语言必备。

7、以太坊网络扫描(官方):http://etherscan.io/

该网站提供了以太坊网络的各种状态,比如帐号的详情、TOKEN详情,难度详情、区块详情,非常方便和直观。

8、以太坊官方博客:https://blog.ethereum.org/

9、以太坊wiki百科地址:https://github.com/ethereum/wiki/wiki

在这里有白皮书、黄皮书以及开发指南,比较全面。

10、以太坊中文爱好者网站:http://ethfans.org/

该网站为国内以太坊爱好者自发建立的网站,内容比较全,信息更新很快。

11、以太坊的gitter的实时交流网站:https://gitter.im/orgs/ethereum/rooms

该网站是以太坊的gitter chart的网站,根据项目分了很多房间,只要你提问题,大部分有人回答,很不错,不过只能英语交流。

12、以太坊的官方论坛:https://forum.ethereum.org/

官方论坛,没什么好说的,我遇到的几个问题,都是在这里找到的答案

13、以太坊第三方强大的IDE:https://live.ether.camp/

这个是第三方发布的Solidity IDE,我看了一下,很强大,强大到还不太会用,他的目标是企业级IDE,老外用的较多。

14、以太坊开发框架Truffle说明书:http://truffle.readthedocs.io/en/latest/

以太坊目前很流行的开发框架Truffle的说明书,这个框架比较流行。

15、以太坊开发框架dapple说明书:http://dapple.readthedocs.io/en/master/

这个开发框架是在gitter chart上看到的,感觉用的人不多,先观察

16、以太坊官方推荐开发框架Meteor说明书:https://github.com/ethereum/wiki/wiki/Dapp-using-Meteor

这个开发框架是以太坊官方推荐的,写进了以太坊的官方wiki,值得学习,当然,以太坊官方经常转换方向,以后换别的也没准

如何开始学习以太坊及区块链相关推荐

  1. 以太坊和区块链实战技术分析详解

    想知道更多关于区块链技术知识,请百度[链客区块链技术问答社区] 链客,有问必答!!以太坊和区块链 一.    以太坊和区块链的关系      从区块链历史上来说,先诞生了比特币,当时并没有区块链这个技 ...

  2. 干货|破解遗传算法——CryptoPups旺财,基于以太坊的区块链游戏(分享实录)

    CryptoPups旺财是一个类似谜恋猫的游戏,即将推出新的手机中文版.本文将通过CryptoPups旺财来分享基于以太坊的区块链游戏. 1 游戏结构和技术概述 其实我个人认为谜恋猫跟传统的游戏比起来 ...

  3. 干货|破解遗传算法——CryptoPups旺财,基于以太坊的区块链游戏(分享实录)...

    CryptoPups旺财是一个类似谜恋猫的游戏,即将推出新的手机中文版.本文将通过CryptoPups旺财来分享基于以太坊的区块链游戏. 1 游戏结构和技术概述 其实我个人认为谜恋猫跟传统的游戏比起来 ...

  4. 比特币vs分布式账本vs以太坊vs区块链

    链客,专为开发者而生,有问必答! 此文章来自区块链技术社区,未经允许拒绝转载. 我们经常被告知,区块链 - 比特币背后的技术 - 不仅将重新布线银行业,还包括社会保障支付,医疗保健甚至数字投票. 到目 ...

  5. 以太坊开启区块链2.0时代

    链客,专为开发者而生,有问必答! 此文章来自区块链技术社区,未经允许拒绝转载. 今天我们唠唠以太坊,这个开启区块链2.0时代的伟大项目. 前面我们说比特币实际上是一个大账本,从比特币白皮书里走出来的区 ...

  6. 以太坊geth区块链私链建立

    想知道更多关于区块链技术知识,请百度[链客区块链技术问答社区] 链客,有问必答!! 以太坊geth区块链私链建立 geth的github https://github.com/ethereum/g.. ...

  7. 使用web3和infura开发以太坊ethereum区块链

    web3 Github: https://github.com/ethereum/web3.js/ web3.js是以太坊提供的一个Javascript库,它封装了以太坊的RPC通信API,提供了一系 ...

  8. 基于Mac环境搭建以太坊私有区块链进行挖矿模拟

    第一步:相关软件的安装 go-ethereum客户端安装 Go-ethereum客户端通常被称为Geth,它是个命令行界面,执行在Go上实现的完整以太坊节点.Geth得益于Go语言的多平台特性,支持在 ...

  9. php区块链以太坊,兄弟连区块链教程以太坊源码分析CMD深入分析(一)

    兄弟连区块链教程以太坊源码分析CMD深入分析. cmd包分析 cmd下面总共有13个子包,除了util包之外,每个子包都有一个主函数,每个主函数的init方法中都定义了该主函数支持的命令,如 geth ...

最新文章

  1. Spring中配置DataSource数据源的几种选择
  2. java jdk1.8环境变量的配置
  3. 计算机管理损坏的图像,损坏的图像(打开软件出现)解决方法
  4. 十六、“心念田园穿古镇,足踏古岸望潭汀。”(2021.5.15)
  5. Yii的action
  6. 11款有用的Web开发在线工具
  7. 玩转oracle 11g(31):ora-04031
  8. python 导入csv文件到oracle_python将文件夹下的所有csv文件存入mysql和oracle数据库
  9. 投票抵制华为鸿蒙系统,网友投票华为十大技术:鸿蒙OS仅排第二!
  10. 团队-手机备忘录-需求分析
  11. Linux 攻击防护基础排查
  12. 微积分知识总览(1)——微积分准备知识
  13. 设计模式和java实现
  14. 解决vmrc的连接已断开,正在尝试重新连接
  15. 手机端网页切图之间出现空白的问题
  16. 计算机应用基础10000字论文,计算机(毕业论文)一万字.doc
  17. 设计思维的定义与一些步骤
  18. 软考高级 2022年11月信息系统项目管理师
  19. CAN总线技术基本概念简述
  20. 【web安全】——文件包含漏洞

热门文章

  1. JVM资源分析工具jprofiler使用简介
  2. Variational Inference
  3. BZOJ 1800: [Ahoi2009]fly 飞行棋【思维题,n^4大暴力】
  4. python学习-练习题兔子生长问题巩固
  5. JMS详细的工作原理
  6. 课程名称翻译大全(zz)
  7. 默认子进程与父进程属于同一个进程组,所以注意对接受到的信号的处理方式
  8. 蛋花花简单阐述HTML5和Web前端的区别
  9. Waymo首次公开自动驾驶技术:让AI学会「危机想象力」
  10. Java SE 6之GUI:让界面更加绚丽(上)