主页 > imtoken安卓app下载 > 如何从零开始学习区块链技术——建议从以太坊开始开发DApps

如何从零开始学习区块链技术——建议从以太坊开始开发DApps

imtoken安卓app下载 2023-05-27 07:56:56

很多人对区块链和以太坊感到困惑,不知道如何学习。本文简要介绍了一些学习方法和资源。

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

从区块链的历史来看,比特币是最先诞生的。那时,还没有区块链的技术和术语。然后业界从比特币中提炼出技术结构和体系,称为区块链技术。从比特币中提炼出来的区块链技术被称为区块链1.0时代,当时的应用主要是电子货币和去中心化交易,比如各种山寨币。而以太坊将区块链带入2.0时代,区块链2.0并没有推翻1.0,而是建立在1.0之上,实现了区块感知、价值感知,图灵完备,并优化细节,从而形成以智能合约为特色的区块链2.0。比特币被定位为一个应用程序,而以太坊被定位为一个平台,你可以在上面使用智能合约来做各种应用程序。

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

二、如何开始使用以太坊

没有接触过区块链的朋友,建议先参与以太坊的日常应用。

安利的两个以太坊相关的实用教程:

区块链初学者:以太坊 DApp 开发入门

高级区块链开发:去中心化以太坊DApp电子商务平台的实际开发

一些常用的材料:

1、使用客户端

关于如何使用 geth 的最受欢迎的电子书:

2、挖矿

挖矿教程很多,一般分布在各个矿池中。这里有一个国内矿池的教程,大家可以加入各个矿池的群进行交流。中国有几个主要的矿池。

3、浏览公链区块信息

体验以上内容后,您可以通过区块链浏览器查看您的账户和交易,更加直观。

通过以上操作,基本可以对区块链有一个初步的认识和认知。

4、开发教程

Java和android开发以太坊区块链教程,web3j开发详解:

使用 PHP 开发以太坊区块链的教程:

Python使用web3.py开发以太坊区块链应用教程:

三、以太坊项目说明

以太坊发布后,也支持多客户端多平台。初学者经常被各种客户弄糊涂。这篇文章做一个详细的总结。

以太坊客户端按语言分类,在github上分为不同的项目。源码地址:以太坊客户端虽然很多,但有两个共同特点:

相同语言的客户端在不同平台上使用相同

不同语言(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 Wood 编写,因此非常受欢迎且易于使用。 AlethZero 是一个图形钱包客户端,对应 Geth 的功能,但是是全图形化的。然而,随着以太坊基金会推动的图形钱包 Mist 的后续推出,它逐渐没落。 Mix是一款智能合约(以太坊中称为DAPP)的开发IDE,可以支持智能合约(DAPP)的编写、调试、部署、全图形界面。 Eth 是一个用 C++ 编写的命令行客户端,具有与 Geth 相同的功能。

迷雾计划

开发语言:JavaScript

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

使用的平台:windows、linux 和 OSX

界面:图形界面

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

可靠性项目

开发语言: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、以太坊 gitter 的直播交流网站:

这个网站是以太坊的gitter图表的网站。根据项目划分为多个房间。只要你问问题,大部分人都会回答,这很好,但只能用英语交流。

11、以太坊官方论坛:

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

12、以太坊第三方强大IDE:

这是第三方发布的 Solidity IDE。我看了看。它非常强大。它太强大了,无法使用。他的目标是企业级IDE,老外用的比较多。

13、以太坊开发框架Truffle说明:

Truffle 手册以太坊和区块链,一种流行的以太坊开发框架。这个框架比较流行。

中文电子书:

14、以太坊开发框架dapple手册:

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

15、以太坊官方推荐开发框架Meteor手册:

此开发框架由以太坊官方推荐并写入以太坊官方wiki。值得学习。当然,以太坊官方经常会改变方向,未来可能无法改变。

16、以太坊DApp制作的投票系统开发实用教程:

转载于: