Move as ETH L2
作为一名开发者,在开源的世界里贡献自己的力量一直是我所向往的。最近,我迎来了两个令我无比喜悦的开源贡献成果,今天就想和大家分享一下这段充满乐趣与挑战的经历。一、Sui仓库的贡献Sui是一个非常令人兴奋的项目,我一直都想在这个项目上做出一些贡献。然而,为Sui仓库贡献代码的过程并不是一帆风顺的
sui-move基础:所有权SuiMove的所有权系统是其核心设计之一,用于确保资源的安全管理和防止误用。通过静态检查所有权转移和资源生命周期,SuiMove提供了内置的编程保障,帮助开发者构建安全高效的智能合约。这篇文章应该被算在sui-move基础里面,为什么要补这样的文章呢?——
sui-move进阶:时间与纪元在Sui框架中,时间是智能合约中常用的元素,用于管理操作期(纪元)和获取精确的时间戳。Sui提供了两种主要的时间机制:纪元(Epoch)和时间(Time),它们在质押、验证人集合管理和其他操作中起着重要作用。纪元(Epoch)什么是纪元?纪元表示
sui-move进阶:vec_map0x2::vec_map模块提供了一种基于向量实现的键值映射数据结构(VecMap)。它支持常见的映射操作,数据以插入顺序存储,而非按键排序。然而,它的操作复杂度为O(N),其设计主要是为小型映射提供编程便利。它作为一个基于向量(vector)的映射结构
sui-move进阶:vector0x1::vector是SuiMove中提供的动态数组模块,用于管理可变大小的容器。向量支持任意类型的存储,具有灵活的增删查改功能,底层实现采用原生操作以确保高效性。如果是学过Rust的朋友,应该对Vector不陌生,但Move的vector仍然与Rus
sui-move进阶:dynamic_field上一节我们说到,table模块的实现用到了dynamic_field,而我将在这一节针对该库进行进一步的讲解。0x2::dynamic_field模块为Sui对象提供了动态字段功能。这允许开发者在对象构造后动态地添加字段,而不是仅依赖静态声明
模块简介animal_crossing::wild_NFT是一个SuiMove模块,旨在创建、管理和操作与濒危动物相关的NFT系统。通过引入wild_coin和SUI,模块结合金融激励机制实现了NFT的铸造、购买、遗弃及空投等功能。主要结构体及功能2.1主要结构
今天我们来全新设计一个代币系统,实现功能如下:一、模块功能概述该模块实现了一个叫WILD_COIN的代币系统,支持以下功能:创建和管理代币的发行和流通(init,mint_wild,increase_unfrozen_supply,decrease_unfrozen_supply
sui-move进阶:tableSuiMove中的0x2::table模块提供了一种类似映射(Map)的集合,用于存储键值对。与传统集合不同,Table的键和值并不直接存储在Table结构体中,而是通过Sui的对象系统进行管理。这使得Table成为一个句柄,用于操作存储在对象
背景简介GraphQL是由Facebook(现Meta)于2012年开发并在2015年开源的一种数据查询语言。与传统的RESTAPI相比,GraphQL提供了一种更加灵活高效的方式来请求和操作数据。通过其强类型系统和声明式查询语法,开发者可以在一次请求中精准获取所需的数据,避
最近在构思HOH水分子社区MOVE共学的最后一个defi项目,考虑的因为是慈善项目,gas费应该减免,所以查阅了一些资料,Sui网络的赞助交易(SponsoredTransactions)正好可以满足需求,现将学习笔记总结如下:一、基本原理介绍Sui网络的赞助交易(SponsoredTr
本文介绍HOH水分子社区Move共学营的task6学习笔记。1.使用脚手架快速创建SuidApp项目Sui生态为开发者提供了一个名为@mysten/create-dapp的脚手架工具,帮助我们快速初始化一个功能完善的dApp项目。以下是使用脚手架的简单步骤:1.1安装和创建项目运行以下
sui-move进阶:生命周期对于许多语言的初学者而言,很可能缺乏生命周期的概念,例如通过C语言入门编程的朋友们。但在例如Move和Rust这样的注重安全的编程语言中,生命周期是一个非常重要的概念,甚至许多时候编译器会要求你注意变量的生命周期。在SuiMove编程中,生命周期用于描述变量和
sui-move进阶:引用在Move中,引用(References)是一种高效且安全的资源访问方式。引用有两种类型:不可变引用和可变引用。Move的类型系统通过强制执行所有权规则,防止引用错误,并确保资源的安全使用。引用类型在Move中,引用分为可变引用(mutablerefere
sui-move进阶:设计模式——见证者与一次性见证者在上一个教程中,我们提到了witness,并说它:使用了一次性见证者的设计模式。在本教程中,我们将对其作进一步的讨论。而在介绍一次性见证者之前,我们需要先介绍一下设计模式——见证者。什么是见证者模式介绍见证者模式的核心是利用特定的值
sui-move进阶:coin.move源码分析coin.move是SuiMove中实现可替代代币(fungibletokens)的核心模块(实际上,因为sui"一切皆对象"和所有权的设计,也自然而然地可以用来实现NFT)。它提供了创建、管理和操作代币的基础工具,包括代币的生成、分割、合
sui-move进阶:四种能力及其组合在SuiMove中,能力(Abilities)是一种类型系统特性,用于约束资源或结构体的行为。能力声明定义了某种类型的可操作性,如存储、复制或丢弃。SuiMove提供了四种能力:store、key、copy和drop。本教程将深入解析这四种能力
sui-move进阶:MovePhantomTypeParameter在Move编程语言中,PhantomTypeParameter是一个强大且灵活的特性,允许开发者通过类型参数区分逻辑类型,而无需为这些类型参数引入不必要的能力(Abilities)。本教程将详细讲解Phanto
sui-move基础(七):letsmove-task6需求完成dapp-kit学习完成SuiSDK学习完成PTB的概念学习完成NaviProtocol学习在dapp-kit里面用chrome钱包签名提交完成必须在同一个PTB完成NaviSDK1.[存入N
扫一扫 - 使用登链小程序
41 篇文章,485 学分
72 篇文章,343 学分
29 篇文章,271 学分
20 篇文章,177 学分
111 篇文章,176 学分