自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 收藏
  • 关注

原创 zksync第三课

zksync编译

2024-03-03 13:09:35 183

原创 zksync第二课

如果部署过其他solidity项目,可以看出,上面的文件结构和其他项目很相似。2、在eth 测试网上领取,然后跨链到zk testnet。4、有一个私钥(可以从metamask里读出来)查看项目目录 ls hello-zksync/hardhat.config.ts 是配置文件。5、领水,需要有一些testnet的代币。1、直接领取zk testnet上的水。感觉是代理问题,所以打开代理后正常了。第二,查看创建后项目初始状态。这样一个项目就被创建出来了。2、node版本大于18。deploy 部署目录。

2024-03-03 12:54:39 386

原创 zksync era 第一课,环境部署

zksync第一课,包括了node的升级命令

2024-03-03 12:17:51 197

原创 Cairo中类型转换的要点

cairo类型转换简单说明

2024-01-07 19:22:51 537 1

原创 starknet训练营听到的干货

2、cairo语言里,最大的整数是felt252, 252位, u256不是原生支持的, 而 实际上u256是由两部分 各128的两段组合而成。所以如果合约参数类型是u256, 那么通过starknet-remix调用时候,输入参数是两部分,通过逗号连接。3、正常做数值运算,就用普通的u8,u32,u128, u256吧,别用felt252,这个会返回意想不到的结果,总之,别用felt252做数值运算就行。4、cairo写合约接口时候, 建议按照solidity合约规范,用大小写方式。

2023-12-03 21:52:46 67 1

原创 starklings-cairo1完结篇

starklings-cairo1终于学完了,基本的语法掌握了,不过也累的精疲力竭,有很多语法一时半会还接受不了。比如, 写入一个合约变量,需要用 write方法, 我们平时都习惯用 赋值=, 比如变量 name平时用 self.name = name, 或者 name = _name 就赋值了。但是在cairo里得用挺别扭的。好在通过能过一遍语法知识,还有例子。总算掌握了大概。

2023-11-27 20:26:38 70

原创 cairo单元测试

写区块链智能合约离不开单元测试,甚至有些都是测试驱动开发,没有单元测试,没法保证程序可靠性,所以自己开发的,部署到链上的新合约一定要有单元测试保证。所以看一下cairo的单元测试写法。

2023-11-26 10:26:29 60 1

原创 编译cairo时候遇到一个奇葩的问题

今天继续通过starklings,学习cairo语言今天学习了以下课程:optionsarraysstructs前两课没有波澜,学习了语法,并且修改代码之后,基本就编译通过了。

2023-11-24 19:29:58 42 1

原创 一个学习非常好的工具(二)

上一次说了这个工具安装入门以及使用案例,今天继续。

2023-11-23 20:15:31 26

原创 一个学习非常好的工具

整天学习各种语言,首先从语法开始,上来就是数据类型, 控制语句,循环,结构体,接着函数、常用结构体,都是这一套流程,有时候学习到后面就忘了前面,必须得有案例把语法知识点用上才能记住要点。学习cairo也不例外, 学习了类似rust的语法, 基本类型,u8、u16、u64等,还有felt252等。还有所有权,快照,引用等各种特殊语法。没有实际项目经验,学了也体会不深。但是有一个快速入门和加深理解,甚至是把学习知识直接应用到小项目里,这样的项目是不是学习起来就快了呢?今天说的就是这样一个工具。

2023-11-22 20:33:02 30

原创 构造函数、事件、以及诡异点

这次测试的合约有一个奇怪的点,合约只有一个owner变量,值构造函数中初始化,把调用者的地址赋给 owner, 这是一个在solidity里非常常见的操作,读出来的owner就是部署者地址。例子:不明白读出的owner : 0x41a78e741e5af2fec34b695679bc6891742439f7afb8484ecd7766661ad02bf ,这个地址是哪里的,个人账户里根本没有这个,看来部署的地址不是用的列表里这些地址。构造函数必须用 #[constructor] 修饰,每个合约只能有一个。

2023-11-19 19:34:53 35

原创 cairo学习中Option和条件语句

这里revert原因,个人分析, 因为参数是 Option<u8> , 输入框里没法输入此类类型,所以导致输入的参数都revert, 但是只有输入0,1时候执行成功,就算输入1时候执行成功,结果也是0。Some可以是任何类型的值, None只能是 (),这里cairo语法和rust 几乎一致,都是利用类型系统做安全检查,就连获取Some里的实际值也是使用 unwarp方法。这两个Option自带 is_some, is_none函数,就像名字表达一样,这个函数返回boo变量。

2023-11-19 16:25:34 31

原创 使用remix编译部署cairo合约

3、在Remix环境里, 新建一个文件,名字可以随便取(例子里取名 TestCariroNew.cairo), 把上面代码拷贝到文件里。5、 与合约交互,每次交互,结果都会显示在控制台里, 这个不像Solidity语言那样,直接能显示在remix界面,后续可能会优化。这里要选择, Remote Devnet, 账户选择第一个即可。左侧底下:1)找到左侧 `Plugins` 2) 激活`Starknet` 插件。点击: Compile,如果没有报错,就说明编译成功。3)激活之后,如下图,出现红圈的图标。

2023-11-15 22:16:02 179

原创 Startnet合约部署概要记述

此处需要注意,由于构造参数需要一个字符串,但是部署时候不能直接输入字符串,只能是16进制串。3)Katana,本地部署的startnet环境,类似(ganache,或者foundry的anvil)此处调用get_name 返回的是一个16进制串,需要使用函数转换成可读字符串。1)Starkli, 可以与Startnet各种环境交互的客户端工具。此时编译后的中间文件,就存放在target/dev目录下了。至此,一趟全流程的合约部署体验完成。invoke: 调用合约读写函数。接下来,调用修改合约状态函数。

2023-11-12 11:26:04 132 1

原创 cairo安装

以太坊L2层网络startnet上的开发语言cairo环境安装

2023-04-02 17:44:52 961

原创 第一次理解了使用gurobi线性优化的过程

使用gurobi求解算法问题,第一次理解到位

2023-03-28 11:52:29 234

原创 在mac m1上编译安装vim

mac m1编译安装支持python的vim

2023-03-24 17:38:09 629 1

原创 学习下智能合约里的时间锁

时间锁本质就是:让交易先创建,过一段时间才能执行。这期间,如果人们发现交易有问题,就有时间做应对。2、call调用, 合约如何调用, 函数签名, 函数选择器。1、modifier, 用来约束函数,权限控制。

2023-03-12 20:59:31 252 1

原创 【学习】自建一个简单的NFT721交易所

通过Remix实践一个NFT721交易所,语言solidity,主要是锻炼一下写合约的思路。

2023-02-26 12:43:08 388 1

原创 web3来了吗

跟风也了解下web3

2023-02-19 21:49:55 161

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除