有哪些好的用Solidity写的以太坊Ethereum学习项目?

[复制链接]
查看6768 | 回复10 | 2021-12-23 02:31:41 | 显示全部楼层 |阅读模式
请问有哪些适合初学者的Ethereum开源学习项目? 最好是用 Solidity 写的。希望可以自己搭建起来,跑起来的同时学习具体的细节。感激不尽!
涛上旭正升醇 | 2021-12-23 13:30:37 | 显示全部楼层
Solidity 的官方文档无疑是最好的学习材料, 英文不是很好的同学,可以阅读由多位顶尖从业人员翻译的中文版,文档中提供了几个很好的例子来入门:% g( k+ U: }! [# t  r9 h% Z
根据例子学习Solidity - Solidity 中文文档 - 智能合约开发 - 深入浅出区块链另外Token(就是常说的代币)通常也是DAPP 应用的重要的一个部分,可以学习这两篇文章:ERC20 代币 及 ERC721 代币
& k3 A8 B2 p8 e学习过程中逐步去深入了解Solidity的语法、特性。 查看文档:
: E" E4 E- _* R& D' x: D1 S深入理解Solidity - Solidity 中文文档 - 智能合约开发 - 深入浅出区块链有兴趣的同学可以挑战下这个游戏:CryptoZombies - Learn to code games on Ethereum.
$ D& q- \9 k  [& U0 B4 S) V, g4 v合约写好之后, 然后就是学习如何在应用中跟合约及进行交互, 这是需要上使用 web3.js 或 ethers.js , web3.js是官方的通信库(也有一些历史包袱),现在越来越多的项目使用 ethers.js . ethers.js 的接口漂亮优雅,这里有一份 ethers.js  的文档:7 O3 Z$ x5 z+ v' x1 \: W
ethers.js 翻译及说明 - ethers.js 中文文档 - 深入浅出区块链这很文档中也提供了很多示例,写过js的同学容易入手的。
7 z9 k' X8 t+ M! E选择web3.js 交互的话,这里有这几篇文章:开发第一个DAPP , 开发一个链上记事本 ,Web3与智能合约交互实 , Web3监听合约事件 。5 G0 e9 W& M' g1 y
% ?0 H! e% m% X. ?6 V1 Y
利益相关:我是深入浅出区块链的发起人,深入浅出区块链是一高质量的区块链技术博客,也是一群区块链开发者的社区。
123479688 | 2021-12-24 01:06:48 | 显示全部楼层
先学Solidity,以太坊的基本逻辑没有搞清楚的话,连与合约交互都很难。9 ~6 l( [" c; Q7 r- F  k0 x
然后呢,Github上以太坊官方和ConsenSys提供了很多solidity的示例和dapp项目。
妙录间败 | 2021-12-24 05:10:06 | 显示全部楼层
以太坊猫(CryptoKitties)源码分析(持续更新)
9 j& }: j. f4 Z) X+ Z3 ~6 K10分钟免安装完成以太坊智能合约测试环境搭建
小电蓄电中小a | 2021-12-24 10:48:49 | 显示全部楼层
GitHub上这个solidity的学习资源列表很赞,还有一个叫做“掘金大队之码农”的微信群,里面的讨论很热烈。
一个易怀旧的人 | 2021-12-24 14:01:02 | 显示全部楼层
最近有个比较火的僵尸网络教程,主要是针对Solidity语法练习的,让你在写僵尸游戏的过程中学习语言,期间与之前的以太猫也关联了起来:CryptoZombies - Learn to code games on Ethereum.
痛雷故跑里 | 2021-12-25 00:39:05 | 显示全部楼层
从零基础开始学的话,CryptoZombies确实是不错的选择。只要依次把上面的作业完成,然后再经常练一练,不到一个月,你基本能写任何你想写的合约。
& A+ `' c/ U$ e6 C6 ^# q- f, _' mhttps://cryptozombies.io/zh/course这个在线教程做的最好的地方就是让你在游戏场景中取学习solidity知识,没有你单纯的去看语法那么枯燥。它的每一关也设置的非常简单,虽然简单但是整个游戏基本涵盖了以太坊合约所有重要的知识点和细节。
  H! o! j4 t% N+ }) E9 m那么在你学完之后,想自己设计一个基于智能合约的系统又不知道从哪下手,这是因为你学习CryptoZombies的时候,CryptoZombies跟你设计了合约整体架构,告诉你先写什么后写什么。而当你离开它了,自己还不具备独立规划完整的合约架构的能力。有这样的情况只需不断尝试练习,自己慢慢就越来越有思路啦,最好能接一些实际的项目来写。你会慢慢形成自己的方法论。4 _" f8 U3 J+ B; |  s# Z% g3 ~
那么最后一点就是写合约一点要比传统的it系统更加注意安全问题,例如:重入攻击等漏洞,因为传统的it系统你可以变更升级,而你的合约一旦发布了,如果你的结构又设计的不好,出现问题可能挽回的余地都没有啦。
123479620 | 2021-12-25 06:17:44 | 显示全部楼层
文档教程:
9 E( m' H% }! G  L% y9 t8 }% G) `" W1 R9 q/ J, G0 ~& K$ J
https://github.com/androlo/solidity-workshop& b4 N: [. d) s/ d
涵盖面向契约编程和高级语言概念的全面系列教程。
/ ~7 b6 \+ Q6 T9 whttps://cryptozombies.io
, ], a* g- C4 ^" M7 x交互式教学方式,通过构建自己的加密收藏品来编写智能合约。, M- I+ y/ L7 l$ |5 T7 l, I
https://learnxinyminutes.com/docs/solidity/  ?, F8 a9 ^( _* i/ J" \
15分钟学习 solidity ,面向有经验的开发人员。
. t3 f5 `7 D8 x2 n实例项目:  z' {& @( l( z+ m

, b+ X# e! W, V4 J* z- q! H1 Mhttps://solidity-by-example.org/: n9 Q3 A5 s$ h6 p& p/ [* @) z
通过简单的例子介绍 solidity语言。
& h; f2 y/ B+ g$ B8 O, |https://github.com/raineorshine/solidity-by-example4 b# z9 m% c  q4 V
一系列简短但功能齐全的合约,展示了solidity语言特性。
. P$ F0 {" d+ _* `7 Y& f+ \* q2 z; ]. Qhttps://github.com/cyrusadkisson/solidity-baby-steps$ X3 {: Z' |. S' [
全面的合同实例的集合。
4 p! t: o- }0 Q+ shttps://github.com/flashbots/simple-arbitrage
$ g! r1 s+ j6 I/ f/ Y基于Flashbots的套利机器人项目。
情定香水百合缕 | 2021-12-25 09:53:10 | 显示全部楼层
谢邀
- \3 X& ?( ^0 S: w. G, o! W3 r最好的资料当然是solidity的官方文档啦' o$ w' A1 a6 v" {
当然etherscan上面也可以找到很多项目。比如之前很火的cryptokitties,你可以找到它的源码学习
( Z5 ^; M5 `6 s7 M6 Z1 d5 V
3 N% v4 o: I) M) P! q( X! O  eaethia.io free egg contract* L+ ]! n3 ]4 I4 @% `3 W& M
可以支持一下我的文章https://zhuanlan.zhihu.com/p/33607763
么雪儿 | 2021-12-25 20:06:53 | 显示全部楼层
学习solidity最好用的当然是Truffle的官方文档。Quick start。从quick start开始,了解truffle的整个开发流程。后面接着看文档的其他内容,就算入门了。不推荐使用其他材料是因为,truffle的发展很快,老旧的材料,二手材料,很容易就过时了。实际上非常的不友好。( i3 S( g4 J. |1 N3 P/ p
更加专业的学习solidity可以使用Crypto zombies,介绍了solidity的很多语法知识,同时结合了游戏的开发。, M' u3 `  E$ `' C/ f
另外想要学好solidity,阅读官方文档是必不可少的。里面有一些点也是非常重要的,比如说Security considerations,介绍了一些安全的编程范式等内容。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

254

金钱

0

收听

0

听众
性别

新手上路

金钱
254 元