在过去两年里,我几乎每周都与试图提升Solidity/智能合约开发技能的开发者进行一对一的视频通话。
根据我的经验,以下是开发者(即使是专业开发者)在理解DeFi代码库时面临的主要原因。
#1 他们的数学基础薄弱,无法将代数表达式转换为Solidity代码。
代码本身只是开发者期望系统运行的底层数学模型的一种表达。尽管数学可能很优雅,但Solidity对分数的支持有限,必须避免溢出/下溢,因此Solidity公式看起来与白皮书中的公式并不相同。
除非你理解代码试图做什么,否则你无法理解代码。
#2 他们在基础金融知识方面较差。
如果你无法将年利率转换为秒利率,那么某些常数就不会让你理解。同样,如果你根本不知道“杠杆”是什么,你又如何理解这些内容呢?
#3 他们实际上并不使用DeFi。
这一点让我有些惊讶,但至少一半对学习DeFi感兴趣的开发者在使用DeFi时仅限于绝对基础。
是的,DeFi是有风险的。但获得直觉的最佳方法就是实际使用它。借钱。贷钱。交换币种。进行一些杠杆交易。
用你可以承受损失的钱来做这些,不要试图一夜暴富。
当你实际使用DeFi时,你会意识到状态变化的“表面积”并没有最初看起来那么大。
#4 他们不理解金库的工作原理。
几乎所有的协议都使用某种“LP股份”或其变体的概念。如果你不深入研究金库数学,你将无法理解你所看到的一些代码背后的逻辑(例如防止通货膨胀攻击的保护或股份价格如何/为何更新)。
如何解决这个问题:
1. 如果你害怕代数,那就解决这个问题。无需成为黑帮,但如果你无法将一个公式从一种形式转换为另一种形式,你将会被这个问题拖慢。Solidity开发者实际上需要数学,这与大多数全栈开发者不同。
2. 将代数转换为Solidity代码,并在其应当工作的领域内进行测试。如果你遇到下溢/上溢或严重的舍入问题,找出原因。你的代码在给定有效值时不应当回退。
3. 实际使用DeFi。通过实践学习,但只使用你可以承受损失的钱。使用L2而不是主网来节省燃气费。
4. 从头开始编写一个金库。你可以复制Solmate代码库,删除金库代码(ERC-4626),然后重新编写并查看你的测试是否通过。
查看原文6,839
138
本页面内容由第三方提供。除非另有说明,欧易不是所引用文章的作者,也不对此类材料主张任何版权。该内容仅供参考,并不代表欧易观点,不作为任何形式的认可,也不应被视为投资建议或购买或出售数字资产的招揽。在使用生成式人工智能提供摘要或其他信息的情况下,此类人工智能生成的内容可能不准确或不一致。请阅读链接文章,了解更多详情和信息。欧易不对第三方网站上的内容负责。包含稳定币、NFTs 等在内的数字资产涉及较高程度的风险,其价值可能会产生较大波动。请根据自身财务状况,仔细考虑交易或持有数字资产是否适合您。