序言
本人从做智能合约开发以来,大部分的问题都是靠百度AI来解决的,网上很多都是介绍什么是区块链的但是关于如何使用的说明很少。
后面我会把自己的学习路线以及相关示例分享给大家。
入门网站
智能合约开发最基本的就是去学习Solidity合约开发语言了。
我学习的入门网站是:
https://cryptozombies.io/
它会引导你一步一步的完成一个关于僵尸的智能合约项目,前面基础的课程都有中文翻译讲解。后面的课程就需要自己去翻译了。
我当时是把有中文翻译的看完了,跟着项目一步步操作。后面没有的就粗略的看了一下
学习的时候可以结合Solidity官方文档一起看这样学的更快
官方文档地址:
https://docs.soliditylang.org/zh-cn/v0.8.29/
我当时学完第一个网站的时候脑子还是有点糊,就感觉好像知道了又好像什么都不知道的样子。这时候你就需要decert.me这个网站了
https://decert.me/tutorial/solidity/intro
它里面包含了许多关于区块链的知识(包括几个常用的代币标准)认真看下来后你就会对智能合约开发有个基本的认知!
decert.me中也包含了其他链上的教程(Sol、Sui)以及go语言做eth开发的讲解。
学习路线
认知了解区块链 》 Solidity 》 Solidity框架 》 EVM 》 扩展插件 》 前端web3 》 其它链
大家可以多看多实验,学什么都是一个漫长的过程不用急于一时。
个人对智能合约开发的理解
我入门是从eth链上开始的
BSC链完全兼容ETH链所以我默认他们是一样的
入门以后才开始学习其它链(比如Sol链)然后再是ton(其实我现在也不太会)
智能合约开发也是区分前后端的就像java一样。
后端主要负责链上合约的编写(ETH是Solidity,Solana是Rust)
大部分的情况是这样,当然其它语言也可以,这要看链上所用的虚拟机支不支持了,就比如EVM上介绍的支持很多语言,但是你要不用主流的话遇到问题去解决问题将会是很痛苦的过程
前端就是去调用链上的智能合约(大概就是用Web3.js或ethers.js去调用编写的智能合约)
我最开始用的是web3.js后来我改用了ethers.js因为web3.js停更了社区也不如ethers.js活跃了。
至于Solidity的框架的话常用的有Truffle 和Hardhat因为hardhat中有内置的Hardhat Network所以我用Hardhat在本地测试的也比较多。
相关网址
hardhat:
https://hardhat.org/hardhat-runner/docs
eth:
https://ethereum.org/zh/developers/docs/
web3.js:
https://docs.web3js.org/
ehters.js
https://docs.ethers.org/v6/
后面我还会分享一些实际的项目或者我本人觉得好用的智能合约开发插件!