Solidity合约那些常用的技巧

  • A+
所属分类:Solana(SOL)

chatGPT账号

Solidity合约那些常用的技巧

背景

使用Solidity有一段时间,同步沉淀下来一些好用的工具以及Solidity合约的常用技巧分享,这些知识都是价值X亿,希望对大家有帮助。

那些好玩的入门教程

  • 僵尸教程: https://cryptozombies.io/

那些好用的工具

部署和测试合约必备利器(二选一),没用过remix,但是生产环境很少会用

  • hardhat: https://hardhat.org/hardhat-runner/docs/getting-started#overview
  • getfoundry https://book.getfoundry.sh/

那些常用的库

  • openzeppelin(必熟): https://docs.openzeppelin.com/

那些有用的写法

  • ERC20(必学):https://docs.openzeppelin.com/contracts/5.x/api/token/erc20
  • ERC721(必学):https://docs.openzeppelin.com/contracts/5.x/api/token/erc721
  • 合约升级(必学):https://docs.openzeppelin.com/upgrades
  • 权限访问(必学):https://docs.openzeppelin.com/contracts/5.x/api/access

那些常用的库

  • MerkleProof(一般用于空投校验):https://docs.openzeppelin.com/contracts/5.x/api/utils#MerkleProof
  • ReentrancyGuard(重入攻击):https://docs.openzeppelin.com/contracts/5.x/api/utils#ReentrancyGuard
  • Pausable(合约暂停,非常有用,防止合约出问题可暂停服务):https://docs.openzeppelin.com/contracts/5.x/api/utils#Pausable
  • Math(数学计算用的):https://docs.openzeppelin.com/contracts/5.x/api/utils#Math
  • EnumerableMap(最近一个亿级项目用到,非常好用): https://docs.openzeppelin.com/contracts/5.x/api/utils#EnumerableMap
  • EnumerableSet(最近一个亿级项目用到,非常好用): https://docs.openzeppelin.com/contracts/5.x/api/utils#EnumerableSet

那些深入的知识

  • Web3.0架构(相当于本课程的总结):https://www.preethikasireddy.com/post/the-architecture-of-a-web-3-0-application
  • 合约全貌(必读):https://docs.soliditylang.org/en/v0.8.26/contracts.html
  • ABI规范(必读):https://docs.soliditylang.org/en/v0.8.26/abi-spec.html
  • 合约调试(万能的打印):https://hardhat.org/tutorial/debugging-with-hardhat-network#solidity-console-log
  • 合约测试(UT):https://hardhat.org/tutorial/testing-contracts
  • Gas源由:https://ethereum.org/zh/developers/docs/gas/
  • EVM介绍:https://ethereum.org/zh/developers/docs/evm/
  • EVM指令集解密:https://takenobu-hs.github.io/downloads/ethereum_evm_illustrated.pdf
  • 共识算法:https://ethereum.org/zh/developers/docs/consensus-mechanisms/
  • 理解女巫攻击:https://en.wikipedia.org/wiki/Sybil_attack
  • Oracle(预言机):https://ethereum.org/zh/developers/docs/oracles/、
免责声明

免责声明:

本文不代表知点网立场,且不构成投资建议,请谨慎对待。用户由此造成的损失由用户自行承担,与知点网没有任何关系;

知点网不对网站所发布内容的准确性,真实性等任何方面做任何形式的承诺和保障;

网站内所有涉及到的区块链(衍生)项目,知点网对项目的真实性,准确性等任何方面均不做任何形式的承诺和保障;

网站内所有涉及到的区块链(衍生)项目,知点网不对其构成任何投资建议,用户由此造成的损失由用户自行承担,与知点网没有任何关系;

知点区块链研究院声明:知点区块链研究院内容由知点网发布,部分来源于互联网和行业分析师投稿收录,内容为知点区块链研究院加盟专职分析师独立观点,不代表知点网立场。

本文是全系列中第227 / 239篇:行业技术

  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 我的电报
  • 这是我的电报扫一扫
  • weinxin
chatGPT账号
知点

发表评论

您必须登录才能发表评论!