对于一个新手来讲,ta的Aha时刻来自于ta终于能够运行本身的第一行代码,我还记得我当年写的能够运行的“烂代码”的兴奋时刻。而当我利用本身的编程技能找到工做时,其中的一个Aha时刻来自于我学会了如何调试程序。调试程序占用工做的时间有时候会达到50%,面对着一堆代码逻辑就是不知道问题在哪里。而当我掌握了如何利用断点查看当前的变量和状态后,个人工做效率提高了一倍,bug变少了,幸福感提高了。vue
调试Solidity
有一个很好的工具:Remix
,经过这个连接能够进入到Remix的网站:http://remix.ethereum.org 。git
代码编辑
以后咱们能够把Solidity
代码放到编辑器中,上图中能够看到最左侧的行数旁边有警告/错误提示,把鼠标放到上面会有具体的信息提示,根据提示修改代码就能够消除错误信息了。修改后的示例代码能够在这里获取:https://gist.github.com/luckyyang/8edc58ad647f35424823448ea4404f8d 。
github
合约编译
以后咱们能够选择对应的编译器版本,示例代码中的版本是0.4.25
,而后就能够编译了,看到绿色的提示代表编译成功。编译的主要工做是生成ABI
和bytecode
,本文不作阐述。编程
合约部署
浏览器
编译成功后,就能够切换到Run
标签进行合约的部署了,这里咱们能够选择Environment
为JavaScript VM
,直接在浏览器中运行一个虚拟的区块链网络,这样就不用咱们使用Mist
和ganache-cli
这类的工具再去运行区块链网络了。微信
如上图所示,选择JavaScript VM
后,会自动帮咱们生成5个Account
,每一个Account
中有100个Ether
,足够咱们开发使用了。
网络
如上图所示,点击Deploy
按钮后就能够部署合约了,部署成功后会自动显示合约的信息。点击合约会显示全部的变量和方法。
app
合约交互
如上图所示,红色表示此类方法会修改合约的状态,也代表了须要消耗gas
;青色表示此类方法的做用是获取信息,不会修改合约的状态。点击具体的方法名字就能够和合约进行交互了。
编辑器
合约调试
如上图所示,同时与合约交互的transaction
也会显示到代码区下面的区域。点击Debug
按钮会跳转到Debugger
界面(下图),不但能够进行单步调试,还能够看到合约中更具体的信息,如变量和合约状态等。
工具
总结
利用Remix
能够很方便的对Solidity
进行编辑,部署和调试,各位Solidity
开发者赶快用起来吧。
本文分享自微信公众号 - Rebase社区(rebase_network)。
若有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一块儿分享。