前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Solidity编码规范

Solidity编码规范

原创
作者头像
fingernft
发布2022-10-17 16:39:48
3640
发布2022-10-17 16:39:48
举报
文章被收录于专栏:nft市场nft市场

1、命名规范

避免使用

小写的L,大写的I,大写的O 应该避免在命名中单独出现,因为很容易产生混淆。

合约、库、事件、枚举及结构体命名——大驼峰

合约、库、事件及结构体命名应该使用单词首字母大写的方式。

比如:SimpleToken, SmartBank, CertificateHashRepository,Player。

函数、参数、变量及修饰器

函数、参数、变量及修饰器应该使用首单词小写后面单词大写的方式,

如:

l 函数名应该如:getBalance,transfer,verifyOwner,addMember。

l 参数和变量应该如:initialSupply,senderAddress,account,isPreSale。

l 修饰器应该如:onlyAfter,onlyOwner

常量

常量应该使用全大写及下划线分割大词的方式,如:MAX_BLOCKS,TOKEN_NAME, CONTRACT_VERSION。

正确使用"_"开头的命名方式

延用Javascript中的约定俗成的命名规范,对私有函数和私有变量使用"_"开头的命名方式,方便区分。

2.代码格式

空行

合约之前、函数之间应该有空行。

左括号

左括号不要换行。

适当空格

在函数、修饰器中定义参数时,参数之前要有一个空格。

3.函数编写规范

按照规定的顺序编写函数

明确函数的可见性

所有的函数(包括构造函数)应该在定义的时候明确函数的可见性。

可见性应在修饰符前

函数的可见性应该写在自定义的函数修饰符前面。

区分函数和事件

为了防止函数和事件(Event)产生混淆,声明一个事件名称首字母大写。对于函数, 始终以首字母小写。

Chainpip介绍

Chainpip是一款关于以太坊智能合约开发的网站, chainpip集成solidity开发环境,提供可视化编译、部署、执行合约等功能,而solidity是以太坊官方设计和支持的开发语言,专门用于编写智能合约。用户使用chainpip就能很快上手,开发一款智能合约。用户还可以在Chainpip上看到其他的dapp项目,可自由复制这些dapp,学习如何开发智能合约。Chainpip还支持多种以太坊系的链: Ethereum(ETH), BNB Smart Chain(BSC), Polygon PoS Chain(MATIC)等。

Chainpip地址:www.chainpip.com

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1、命名规范
    • 避免使用
      • 合约、库、事件、枚举及结构体命名——大驼峰
        • 函数、参数、变量及修饰器
          • 常量
            • 正确使用"_"开头的命名方式
            • 2.代码格式
              • 空行
                • 左括号
                  • 适当空格
                  • 3.函数编写规范
                    • 按照规定的顺序编写函数
                      • 明确函数的可见性
                        • 可见性应在修饰符前
                          • 区分函数和事件
                          • Chainpip介绍
                          相关产品与服务
                          区块链
                          云链聚未来,协同无边界。腾讯云区块链作为中国领先的区块链服务平台和技术提供商,致力于构建技术、数据、价值、产业互联互通的区块链基础设施,引领区块链底层技术及行业应用创新,助力传统产业转型升级,推动实体经济与数字经济深度融合。
                          领券
                          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档