帖子
分享您的知识。
第 1 层部署
我已经学会了使用Remix在测试网上部署一个简单的智能合约.
将 DeFi 协议部署到任何第 1 层或第 2 层网络的最佳实践程序是什么?
你使用 Remix 吗,你使用任何 CLI 或任何其他替代方案吗? 它们中的任何一个比另一个更安全吗?为什么选择这个程序来对抗其他 2 个程序?
例如,当 Uniswap 团队将 Uniswap 代码部署到以太坊第 1 层时,他们是如何部署代码的?
谢谢
- Cyfrin Updraft
- Blockchain
- Smart Contract
答案
1有几种部署智能合约的方法,比如很多. 这一切都取决于个人的喜好. 就我而言,让我们来谈谈大多数开发人员最喜欢采用的2-3种方法:
-
Hardat-这是一个专门为以太坊构建的开发环境. 人们可以使用智能合约做各种事情,例如调试、测试和部署. 它易于使用,有自己的CLI,并使用Javascript,这是一种非常通用的语言,几乎为该领域的每个人所熟知.
-
Foundry-这是开发人员通常更喜欢开发智能合约的另一种流行武器. 它最近很受欢迎,因为它在所有方面都使用 Solidity,这意味着在开发部分不需要使用各种语言,你知道 Solidity,你什么都有. 是的,它也带有CLI,与Hardhat相比可能相当困难. 但是,这种痛苦是值得的.
3.Remix(无需粘贴其链接)-你知道Remix,这是我们介绍的第一个工具. 好吧,是的,这是最简单的,但是做除部署之外的其他事情可能已经够困难了. 尽管如此,从未见过开发人员将其大量用于严肃的开发目的. 有时甚至我也用它来测试非常基本的东西,我需要部署一个合约来测试它的某些部分,而不是为此编写一个完整的脚本.
除此之外,你还可以找到其他一些现在已经过时的工具. 我记得从 2023 年底开始的时候,有像 Truffle 这样的工具,说实话,我不喜欢(只是个人观点).
我个人还知道另一个工具,其他人对此知之甚少,因为它是目前的入门工具,由一个小团队创建,我认识创始人(我是最早与他分享想法的人之一). 是 AnyFlow. 这个项目实际上是为了避免在智能合约开发过程中有时会给开发人员带来的痛苦而建立的. 它的一些功能是: -无需关心测试网代币 -神奇的用户界面 -没有 cli
AnyFlow 的唯一先决条件是您的项目必须是硬帽项目(仅使用一个命令即可创建). 然后你所需要做的就是连接你的 GitHub,调出你的仓库,选择链,然后部署. 我亲自尝试过,绝对不错,尤其是在你的测试网代币不足的时候.
现在让我们来回答你的一些具体问题:
将 DeFi 协议部署到任何第 1 层或第 2 层网络的最佳实践程序是什么?
无论是DeFi协议还是相互关联的一系列智能合约,大多数时候程序始终保持不变. 测试合约,部署合约,保护您的私钥(尝试找到更好的方法,而不是将密钥存储在.env
文件中. 此外,将开发��钱包和实际资金的钱包分开是一种很好的做法. 为什么会这样?由于这些天发生了许多黑客攻击,目标是我们,我们开发人员. 我已经面临过攻击但不知何故得救了(你知道原因),但是很多人并不总是那么幸运.
你使用 Remix 吗,你使用任何 CLI 或任何其他替代方案吗?它们中的任何一个比另一个更安全吗?为什么选择这个程序来对抗其他 2 个程序?
我已经回答了第一部分. 说到安全性,从来没有听说过部署方面的任何漏洞或漏洞(除非开发人员本身有过错,例如,他错误地将自己的私钥推送到Github等). 因此,它们中的大多数是安全的. 选择其中任何一个是你的个人喜好,为什么不全部尝试一下,只选择一个你满意的呢?
例如,当 Uniswap 团队将 Uniswap 代码部署到以太坊第 1 层时,他们是如何部署代码的?
我不完全知道Uniswap团队使用了什么来部署Uniswap,可能可以立即通过谷歌进行搜索,或者稍微挖掘一下各种文章,或者Uniswap的GitHub本身. 老实说,这并不重要. 一旦你确切地了解了部署智能合约的相关知识,你可能会猜出他们是如何做到的(如果不完全的话). 这里要重点关注的是,他们是如何编写和测试的,但这取决于你. 但是,我肯定他们没有使用Remix.
祝你好运!
你知道答案吗?
请登录并分享。
Cyfrin Updraft is an education platform specializing on teaching the next generation of smart contract developers